Accueil > Forum > > > > HBITMAP avec transparence
HBITMAP avec transparence
mercredi 21 avril 2004 à 10:41:41 |
HBITMAP avec transparence

CyberP
|
Est ce que quelqu'un sait mettre en transparence une couleur d'un HBITMAP (en l'occurence RGB(255,0,255)) ? J'ai cherché une demi heure dans le MSDN sans succès... (en tout cas rien pour une simple bitmap) CyberP, Celui qui dit que toute question a une réponse
|
|
mercredi 21 avril 2004 à 12:13:22 |
Re : HBITMAP avec transparence

JCDjcd
|
bah en fait cela est possible. Il suffit de faire BitBlit avec l'option non pas COPY mais AND ou XOR, et ta transparence doit etre de couleur noir
Bon en gros tu reflefhis un peut sur les oprerations logiques AND XOR OR ..., et ca devrai marche.
|
|
mercredi 21 avril 2004 à 13:06:26 |
Re : HBITMAP avec transparence

CyberP
|
Je ne peux pas utiliser BitBlt parce que dans mon script, j'insère un HBITMAP dans un RichEdit... Je ne peux que modifier le HBITMAP avant de l'insérer
CyberP, Celui qui dit que toute question a une réponse
|
|
mercredi 21 avril 2004 à 13:42:12 |
Re : HBITMAP avec transparence
|
mercredi 21 avril 2004 à 13:45:26 |
Re : HBITMAP avec transparence

CyberP
|
Oui j'ai déjà eu l'idée, mais je ne trouve rien non plus pour modifier la couleur (à moins de changer manuellement, mais je ne sais pas comment faire pour récupérer la taille ou les bits)
CyberP, Celui qui dit que toute question a une réponse
|
|
mercredi 21 avril 2004 à 14:00:42 |
Re : HBITMAP avec transparence

DARKSIDIOUS
|
Tu peux récupèrer le tableau de bits de l'image avec la fonction GetDIBits (à ce moment là, il faut créer au préalable un DC !) puis faire tes modifications dans ce tableau. DarK Sidious [Responsable API/VB du site www.ProgOtoP.com] Téléchargez ProgOtoP API Viewer
|
|
mercredi 21 avril 2004 à 14:36:02 |
Re : HBITMAP avec transparence

CyberP
|
Merci, ca commence à marcher
CyberP, Celui qui dit que toute question a une réponse
|
|
mercredi 21 avril 2004 à 18:35:07 |
Re : HBITMAP avec transparence

CyberP
|
Non ca ne marche toujours pas... Mon code est : CBitmap tmpbmp; tmpbmp.LoadBitmap(smile); HBITMAP hBitmap = (HBITMAP)tmpbmp; BITMAPINFO bitMapInfo; GetDIBits(GetDC(), hBitmap, 0, 20, NULL, &bitMapInfo, DIB_RGB_COLORS); int rred = bitMapInfo.bmiColors[0].rgbRed; int ggreen = bitMapInfo.bmiColors[0].rgbGreen; int bblue = bitMapInfo.bmiColors[0].rgbBlue; for (int i = 0; i < 324/*bitMapInfo.bmiHeader.biHeight * bitMapInfo.bmiHeader.biWidth*/; i++) { if (bitMapInfo.bmiColors[i].rgbRed == rred && bitMapInfo.bmiColors[i].rgbGreen == ggreen && bitMapInfo.bmiColors[i].rgbBlue == bblue) { bitMapInfo.bmiColors[i].rgbRed = 0;//GetRValue(WinUtil::bgColor); bitMapInfo.bmiColors[i].rgbGreen = 0;//GetGValue(WinUtil::bgColor); bitMapInfo.bmiColors[i].rgbBlue = 128;//GetBValue(WinUtil::bgColor); } } SetDIBits(GetDC(), hBitmap, 0, 20, NULL, &bitMapInfo, DIB_RGB_COLORS); CImageDataObject::InsertBitmap(ctrlClient.GetOleInterface(), hBitmap);
|
les 3 premières lignes ainsi que la dernière "fonctionnent" la couleur de fond est rgb(0,0,128) là où j'ai mis des commentaires pour tester (normalement ce n'est pas des commentaires) le GetDC() fonctionne car il y a un morceau de code planqué quelque part (je modifie un programme existant) qui fait que ca revienne à hWnd.GetDC() CyberP, Celui qui dit que toute question a une réponse
|
|
mercredi 21 avril 2004 à 18:50:05 |
Re : HBITMAP avec transparence

DARKSIDIOUS
|
Il faut renseigner la taille de la structure BITMAPINFOHEADER : bitmapinfo.bmiHeader.biSize = sizeof(bitmapinfo); De même, il faut renseigner la hauteur et la largeur de ton bitmap dans ton bitmapinfo : bitMapInfo.bmiHeader.biHeight et bitMapInfo.bmiHeader.biWidth Enfin, je ne vois pas trop comment tu fais pour modifier tes bits comme cà... J'ai toujours récupèrer le tableau de bits du bitmap puis traiter ce tableau directement. Apparement, ce n'est pas ce que tu fais... je ne sais pas si on peux faire directement comme tu fais ! Il faudrait quelqu'un qui s'y connaissent mieux en C que moi, car mes connaissances sont bien faibles en C ! DarK Sidious [Responsable API/VB du site www.ProgOtoP.com] Téléchargez ProgOtoP API Viewer
|
|
mercredi 21 avril 2004 à 19:35:50 |
Re : HBITMAP avec transparence

CyberP
|
Oui mais le problème est que je ne sais pas comment récupérer la taille de mes bitmap (ils n'ont pas tous la même taille)
Sinon je trouve un peu idiot qu'il faille déjà "compléter les informations" alors qu'on récupère des données
CyberP, Celui qui dit que toute question a une réponse
|
|
Cette discussion est classée dans : transparence, hbitmap
Répondre à ce message
Sujets en rapport avec ce message
transparence [ par crazy666 ]
je vous explique le topo, j'ai fait une petite appli avec 1 boite de dial composée de 3 boutons.La boite de dialogue a une image en fond et les 3 bout
Probleme de transparence [ par Sebaplus ]
Salut, j'ai un problème avec la transparence: lorsque je regarde la face transparente à travers une face opaque, je la vois qu'en meme.Pourtant je des
transparence qui ne marche pas sur toutes les machines [ par bouss ]
J'utilise dans une application Directx7 des fonction de rendu par alphablending.Ces fonctionalités marchent très bien sur mon PC (une vielle bécane av
Icone dégueulasse ! [ par Kephren ]
Salut, je viens demander de l'aide. J'ai fait une toolbar dans mon prog, via les API sans MFC. Et je vais ensuite mettre les icones des boutons dedans
transparence [ par trif ]
J'ai une zone de type STATIC qui contient une image.je n'arrive pas a ecrire par dessus.j'ai essayé de superposer une autre zone STATIC qui contient l
Bitmap [ par zainal ]
Salut a vousbon voila, je voudrai afficher une bitmap dans une zone de static et j ai creer ce bout de code qui ne marche pas vous vous en douter !voi
recuperation de la taille d'un HBITMAP [ par youpiyoyo ]
pouvez vous m'aider a trouver la longueur et largeur d'un HBITMAPmerci d'avance youpi
Win32, transparence des objets [ par _Jonathan ]
salut, je cherche a rendre transparent le fond d'un composant "static"...merci d'avance
Transparence d'une fenêtre [ par kami190182 ]
est il possible en c++ de rendre une fenêtre transparente partiellement.Merci d'avance
Transparence texture [ par lechabin ]
Bonjour,J'affiche un texture sur un carré, et j'aimerai que seul la texture elle meme apparaissegenre j'applique une texture en croix, et je voudrai q
Livres en rapport
|
Derniers Blogs
JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|