Bonjour tout le monde
Voici mon probleme : je voudrais imprimer une image que je charge depuis un fichier (BMP ou JPG ou autre peu importe).
J'arrive a charger l'image dans un HBITMAP, à l'afficher et meme à la voir dans mon aperçu avant impression.
Quand j'imprime mon image couleur sur une imprimante couleur pas de probleme. De meme si j'imprime un image noir et blanc sur une imprimante couleur ou noir et balnc.
Mais si j'imprime une image couleur sur une imrpimante noir et blanc, rien ne sort. Pourtant à l'aperçu je vois bien mon image couleur.
Je voudrais savoir si il y a moyen de convertir le HBITMAP pour qu'il soit compatible avec le DeviceContext de l'imprimante pour pouvoir faire un SelectObject utilisable par le StretchBlt.
Ma procédure :
LoadImage pour récupérer le HBITMAP dans Himage.
Puis lors de l'impression :
HDC hdcBits; BITMAP bm; hdcBits = CreateCompatibleDC(pdc->m_hDC); // pdc etant le CDC* de l'imprimante GetObject (Himage, sizeof(BITMAP), &bm); SelectObject(hdcBits,Himage); StretchBlt(pdc->m_hDC, xHautGauche, int( yHautGauche + HauteurImage ), int( LargeurImage ), // Ces valeurs sont correctes int( -HauteurImage ), hdcBits, 0, 0, bm.bmWidth, bm.bmHeight, SRCAND);
|
Merci d'avance