Sauvegarder Bitmap dans un fichier

cs_stillfelil Messages postés 108 Date d'inscription samedi 31 juillet 2004 Statut Membre Dernière intervention 12 septembre 2009 - 2 août 2006 à 10:34
cs_stillfelil Messages postés 108 Date d'inscription samedi 31 juillet 2004 Statut Membre Dernière intervention 12 septembre 2009 - 2 août 2006 à 16:28
Bonjour

Je vien de coder un source de recuperer un source pour un Screenshot (ce n'est pas le mien)

mais voila je ne sais pas comment enregistrer le Bit map dans fichier JPG

Merci pour votre aide ;-)

//-----------------------

LPBYTE m_pBitmapData = '\0';


    HDC m_hDcBitmap = '\0';

    HBITMAP hBitmap = '\0';


    // Récupération du HWND et du HDC du bureau

    HWND hWndWindow = GetDesktopWindow();

    HDC hDcWindow = GetWindowDC(hWndWindow);


    // On récupére les dimensions du bureau

    int ScreenX = GetDeviceCaps(hDcWindow, HORZRES);

    int ScreenY = GetDeviceCaps(hDcWindow, VERTRES);


    // Création d'un contexte mémoire

    m_hDcBitmap = CreateCompatibleDC(hDcWindow);

    if(!m_hDcBitmap) return -1;


    // On crée un bitmap en mémoire ayant les dimensions du bureau

    hBitmap = CreateCompatibleBitmap(hDcWindow, ScreenX, ScreenY);

    if(!hBitmap) return -1;


    // On sélectionne ce bitmap dans le contexte mémoire

    if(!SelectObject(m_hDcBitmap, hBitmap)) return -1;


    // On effectue une copie du contexte écran vers le contexte mémoire

    if(!BitBlt(m_hDcBitmap, 0, 0, ScreenX, ScreenY, hDcWindow, 0, 0, SRCCOPY)) return -1;

//------------------------

9 réponses

cs_saifer Messages postés 115 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 décembre 2008 1
2 août 2006 à 15:32
Salut,
pour enregistrer au format .jpg il te faut utiliser une librairie comme FreeImage par exemple. Va voir ici ya déjà la réponse : http://www.cppfrance.com/code.aspx?ID=29172

-{ Saifer }-
<hr size="2" width="100%" />http://sypher.fr.nf
0
cs_stillfelil Messages postés 108 Date d'inscription samedi 31 juillet 2004 Statut Membre Dernière intervention 12 septembre 2009 3
2 août 2006 à 15:51
Merci ;-)

Ca fait appel a une DLL,

Un source sans invoquer une DLL serait plus facile,mais c'est bien aussi

merci
0
cs_saifer Messages postés 115 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 décembre 2008 1
2 août 2006 à 15:59
Je me suis jamais servis de FreeImage, mais t'as besoin d'une dll que pour executer ton prog, dans tes headers, tu rajoute FreeImage.h, et faut aussi surment linker avec la libraire FreeImage.lib,  et hop, tu fai ce que tu veux.
Après si vraiment tu veux pas avoir à utiliser une dll, je pense que tu peux trouver autre chose, ou même carément un bout de code qui fait la conversion, mais qui sera beaucoup plus difficile à comprendre !

-{ Saifer }-
<hr width="100%" size="2" />http://sypher.fr.nf
0
cs_stillfelil Messages postés 108 Date d'inscription samedi 31 juillet 2004 Statut Membre Dernière intervention 12 septembre 2009 3
2 août 2006 à 16:04
Ta entierement raison

Merci;-)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_stillfelil Messages postés 108 Date d'inscription samedi 31 juillet 2004 Statut Membre Dernière intervention 12 septembre 2009 3
2 août 2006 à 16:06
Pour le .lib ,je ne le trouve pas parse que apparement jen e besoin
0
cs_saifer Messages postés 115 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 décembre 2008 1
2 août 2006 à 16:11
télécharge ce zip : http://switch.dl.sourceforge.net/sourceforge/freeimage/FreeImage391Win32.zip
il y a tout ce qu'il te faut dedans. (il se trouve sur le site de FreeImage)
Je l'ai dl, dans le répertoire "dist", y a le .h, la dll, et le .lib

-{ Saifer }-
<hr width="100%" size="2" />
http://sypher.fr.nf
0
cs_stillfelil Messages postés 108 Date d'inscription samedi 31 juillet 2004 Statut Membre Dernière intervention 12 septembre 2009 3
2 août 2006 à 16:26
Super Super Merci Saifer
0
cs_saifer Messages postés 115 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 décembre 2008 1
2 août 2006 à 16:28
de rien, j'ai rien d'autre a foutre a cette heure de la journée ^^, mais ca reste tjrs un plaisir !

-{ Saifer }-
<hr width="100%" size="2" />http://sypher.fr.nf
0
cs_stillfelil Messages postés 108 Date d'inscription samedi 31 juillet 2004 Statut Membre Dernière intervention 12 septembre 2009 3
2 août 2006 à 16:28
Ca Marche !!! mon pot

ahhh merci
0
Rejoignez-nous