BMP en mémoire comme Byte array. L'afficher en PictureBox / Image ?

Signaler
Messages postés
2
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
20 août 2007
-
Messages postés
2
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
20 août 2007
-
Bonjour,


J'ai un Byte array (dim myArray() as Byte) qui a 76085 éléments, et contient un bitmap de 176 x 144 (BMP24).
Ce que j'arrive à lire du myArray():


myArray(18) = 176  (longueur du bitmap)
myArray(22) = 144 (largeur du bitmap)


Egalement à partir de l'élément 54 j'ai les données RGB de mon bitmap, dans l'ordre inverse:


myArray(54) = Couleur bleu du Point(0,143)
myArray(55) = Couleur verte du Point(0,143)
myArray(56) = Couleur rouge du Point(0,143)
myArray(57) = Couleur bleu du Point(1,143)
.....


en comptant à partir de la fin:


myArray(76085)  = Couleur rouge du Point(175,0)
myArray(76084)  = Couleur verte du Point(175,0)
myArray(76083)  = Couleur bleu du Point(175,0)
myArray(76082)  = Couleur rouge du Point(174,0)




Je comprends que mon myArray() contient un bitmap. Mais de quelle façon puis-je l'afficher dans une PictureBox / Image.
Jusque l'à j'extractais chaque point de myArray avec ses trois couleurs RGB, et le dessinait dans une picturebox avec "Picture1.PSet (x, y), Color". C'est trop long.


Est ce que cet myArray() contient un bitmap conventionnel, et si oui comment l'afficher directement avec une commande de type "Picture1.PaintPicture myArray(), 176, 144".


Même question si myArray() contenait un JPEG.


Merci d'avance,
trancemaster

2 réponses

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
120
Pourquoi tu n'utilise pas quelque chose de déjà fait, du style ma classe de gestion d'image qui gère les images par un tableau de bits justement, ce qui apporte une rapidité quasi-imbattable (en tout cas, comparé à PSet de VB, ou SetPixel de l'API Windows !)
Messages postés
2
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
20 août 2007

Vais regarder ça. Merci.