Initialisation du BITMAPINFO pour avoir une palette 256 couleurs!
SyN42
Messages postés11Date d'inscriptionjeudi 26 février 2004StatutMembreDernière intervention 6 février 2006
-
2 nov. 2005 à 17:25
cs_chris91
Messages postés54Date d'inscriptionjeudi 20 novembre 2003StatutMembreDernière intervention 4 avril 2007
-
3 nov. 2005 à 19:09
Bonjour, J'extrait de mon bmp 24bit un plan que je veux afficher avec mfc.
Lorsque je veux remplir la pallette de mon bitmapinfo un probleme se pose.
soit BITMAPINFO bmi;
Or lors de cette déclaration, le bmiColors du bitmapinfo est déclaré en
RGBQUAD[1] !! et je ne peux y mettre mes 256 couleurs car il
faudrait RGBQUAD[256].
donc
for (int i=0; i <256; i++)
//cas
pour la palette bleu
{
bmi.bmiColors[i].rgbBlue = i;
bmi.bmiColors[i].rgbGreen = 0;
bmi.bmiColors[i].rgbRed = 0;
bmi.bmiColors[i].rgbReserved = 255;
}
ne marche pas.... Comment puis-je gérer ce cas?
merci de votre aide
A voir également:
Une image .tiff repose sur une palette de 256 000 couleurs.
Image .tiff repose sur une palette de 256 000 couleurs - Meilleures réponses
.Tiff repose sur une palette de 256 000 couleurs. - Meilleures réponses
gagah1
Messages postés509Date d'inscriptionsamedi 28 juin 2003StatutMembreDernière intervention 3 août 2010 3 nov. 2005 à 10:45
Un bitmap 24 bits n'a pas de palette de couleurs.
Le membre RGBQUAD[1] de la structure BITMAPINFO indique le premier element de tableau de couleur de la palette en cas de bitmap <= à 16 bits.
cs_chris91
Messages postés54Date d'inscriptionjeudi 20 novembre 2003StatutMembreDernière intervention 4 avril 2007 3 nov. 2005 à 19:09
salut,
c'est possible avec un BitBlt et MERGECOPY.
avec MERGECOPY il y a un AND entre la couleur du pixel source et le brush en sélection dans le DC destination.