Sauvegarder Bitmap dans un fichier

Messages postés
108
Date d'inscription
samedi 31 juillet 2004
Statut
Membre
Dernière intervention
12 septembre 2009
- - Dernière réponse : 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;

//------------------------
Afficher la suite 

9 réponses

Messages postés
116
Date d'inscription
samedi 29 mars 2003
Statut
Membre
Dernière intervention
19 décembre 2008
1
0
Merci
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
Commenter la réponse de cs_saifer
Messages postés
108
Date d'inscription
samedi 31 juillet 2004
Statut
Membre
Dernière intervention
12 septembre 2009
2
0
Merci
Merci ;-)

Ca fait appel a une DLL,

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

merci
Commenter la réponse de cs_stillfelil
Messages postés
116
Date d'inscription
samedi 29 mars 2003
Statut
Membre
Dernière intervention
19 décembre 2008
1
0
Merci
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
Commenter la réponse de cs_saifer
Messages postés
108
Date d'inscription
samedi 31 juillet 2004
Statut
Membre
Dernière intervention
12 septembre 2009
2
0
Merci
Ta entierement raison

Merci;-)
Commenter la réponse de cs_stillfelil
Messages postés
108
Date d'inscription
samedi 31 juillet 2004
Statut
Membre
Dernière intervention
12 septembre 2009
2
0
Merci
Pour le .lib ,je ne le trouve pas parse que apparement jen e besoin
Commenter la réponse de cs_stillfelil
Messages postés
116
Date d'inscription
samedi 29 mars 2003
Statut
Membre
Dernière intervention
19 décembre 2008
1
0
Merci
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
Commenter la réponse de cs_saifer
Messages postés
108
Date d'inscription
samedi 31 juillet 2004
Statut
Membre
Dernière intervention
12 septembre 2009
2
0
Merci
Super Super Merci Saifer
Commenter la réponse de cs_stillfelil
Messages postés
116
Date d'inscription
samedi 29 mars 2003
Statut
Membre
Dernière intervention
19 décembre 2008
1
0
Merci
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
Commenter la réponse de cs_saifer
Messages postés
108
Date d'inscription
samedi 31 juillet 2004
Statut
Membre
Dernière intervention
12 septembre 2009
2
0
Merci
Ca Marche !!! mon pot

ahhh merci
Commenter la réponse de cs_stillfelil