Paintpicture + couleur transparente

cs_Stephane Messages postés 550 Date d'inscription vendredi 5 janvier 2001 Statut Membre Dernière intervention 23 septembre 2006 - 18 juin 2002 à 20:48
cs_Johjo Messages postés 19 Date d'inscription mardi 5 juin 2001 Statut Membre Dernière intervention 22 août 2002 - 22 août 2002 à 10:46
salut a tous

voila, j'ai eu vu des bouts de code utilisant un api du style bitblt, mais je ne sais pas comment l'utilser.
en fait ce que je voudrai faire c pareil qu'avec la fonction paintpicture, mais avec une couleur transparente.

Donc ma question c'est comment (si possible simplement) faire un paintpicture avec une couleur transparente ?

Merci beaucoup à tous pour vos réponses
Stéphane

4 réponses

SoniqExnihilo Messages postés 25 Date d'inscription vendredi 26 avril 2002 Statut Membre Dernière intervention 16 février 2003
19 juin 2002 à 10:56
eu... VB6 prend les GIF les enfants... pkoi tlm demande comment faire de la transparence

Soniq Exnihilo
0
cs_Stephane Messages postés 550 Date d'inscription vendredi 5 janvier 2001 Statut Membre Dernière intervention 23 septembre 2006
19 juin 2002 à 12:17
salut

parce qu'en fait, l'image n'est pas stockée dans un image mais dans un picture et une fois l'image gif dans le picture, y a plus de couleur transparente puisque c'est considéré comme BMP

merci kan meme
a+
0
SoniqExnihilo Messages postés 25 Date d'inscription vendredi 26 avril 2002 Statut Membre Dernière intervention 16 février 2003
19 juin 2002 à 12:55
met un "image" dans un "picture".. enfin si c compatible avec se que tu veut faire

Soniq Exnihilo
0
cs_Johjo Messages postés 19 Date d'inscription mardi 5 juin 2001 Statut Membre Dernière intervention 22 août 2002
22 août 2002 à 10:46
Je repond un peu en retard ;) mais bon
Avec la méthode paintpicture, pour faire des effets transparents, il faut que tu te serve du dernier parametre de paintpicture.

Je pense par exemple que si tu as un rond, tu voudrais copier seulement le rond, et pas le carré blanc qui l'entoure, c'est ça?

donc pour ça, il faut que tu prenne ton image principal, le rond par exemple, et que tu mette en noir tout ce qui doit etre invisible, et tu ne touches pas le reste de l'image. On appelera cette image l'image1
Ensuite, tu copie l'image, et là
tout ce qui doit être invisble, tu le met en blanc, et tout ce qui doit etre visible tu le met en noir. Ce sera l'image2

Ensuite, dans VB
tu declare :Const SRCPAINT &HEE0086 ' (DWORD) dest source OR destConst SRCAND &H8800C6 ' (DWORD) dest source AND dest

dans picture1, tu vas mettre l'image1
dans picture2, tu vas mettre l'image2
et un picture3 auquel tu met une image de fond (si tu veux en mettre une)
et tu fais ensuite
picture3.paintpicture picture2,X,Y,,,,,,SRCAND
picture3.paintpicture picture1,X,Y,,,,,,SRCPAINT

et tu obtiendras un rond (dans l'exemple), comme ça, tu n'es pas obligé de faire des formes carrés.
Si tu n'y arrive pas, mail moi à Johjo@free.fr, je t'expliquerai mieux en detail
0
Rejoignez-nous