Transparence de bitmap en GDI+

Transparence de bitmap en GDI+ - C++ - Programmation

Marsh Posté le 24-01-2008 à 19:10:26    

Je cherche à animer une bitmap en GDI+ (rotation surtout) en considérant tous les pixels noirs de la bitmap comme transparents. Pour ce faire, je parcours tous les pixels de la bitmap, et pour tous ceux qui sont noirs, je mets l'alpha à 0 pour obtenir la transparence voulue, et ça marche bien. Pas le choix, "MakeTransparent" n'existe pas en GDI+...
 
Le problème est que :
- Quand je lis ma bitmap depuis un fichier:  
image = new Bitmap(L"MonImage.bmp" );  
Ca marche très bien. Mais en fait je préfère prendre la bitmap sous forme de ressource.  
- Quand je lis la ressource bitmap:  
image = new Bitmap(hInst, MAKEINTRESOURCEW(IDB_BITMAP5));  
Ca marche aussi, sauf que le bitmap n'a pas le même PixelFormat, si bien qu'il est impossible de gérer la transparence dedans. Je n'arrive pas à mettre l'alpha à 0 dans ce cas.  
 
Pourtant, je confirme qu'il s'agit du même fichier .bmp dans les 2 cas.
Toute information est la bienvenue ;-)
 
Eric

Reply

Marsh Posté le 24-01-2008 à 19:10:26   

Reply

Marsh Posté le 22-08-2008 à 10:13:26    

Essaye en utilisant la fonction :
Bitmap::LockBits()

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed