Bonjour,
Est-il possible de faire une capture d'écran et d'enregistrer cette capture au format jpg ?
Merci pour votre aide, Hervé
Bonjour,
Est-il possible de faire une capture d'écran et d'enregistrer cette capture au format jpg ?
Merci pour votre aide, Hervé
Salut !
C'est possible !
Personnellemnt, je le fais comme cela :
Cette méthode est un peu lourde mais elle est fonctionnelle !!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 TPicture* Picture; TFileStream* FileStream; HDC hScreenDC; AnsiString HtmlFile, JpgFile, strContenuHTML; // copie d'écran (seulement la fenetre active). hScreenDC = GetDC(pControlIHM->Handle); Picture = new TPicture; Picture->Bitmap->Canvas->Handle=CreateCompatibleDC(hScreenDC); Picture->Bitmap->Height = pControlIHM->Height; Picture->Bitmap->Width = pControlIHM->Width; BitBlt( Picture->Bitmap->Canvas->Handle, 0, 0, pControlIHM->Width, pControlIHM->Height, hScreenDC, 0, 0, SRCCOPY ); // création de l'image // attribution des noms de fichiers JpgFile = "NomFichier.jpg"; TJPEGImage* pJPEGImage = new TJPEGImage; pJPEGImage->Assign(Picture->Bitmap); pJPEGImage->SaveToFile(JpgFile); delete pJPEGImage; // pour libérer le pointeur
Je suis preneur de toute autre version plus "light"![]()
Salut,
Merci pour la source.
J'ai un petit problème avec TJPEGImage. Je n'arrive pas à compiler.
Faut-il rajouter une référence ou quelquechose de ce type pour pouvoir l'utiliser. (j'utilise Builder 6 professionnel).
TBitmap marche mais cela donne des images en .bmp et elles sont trop lourdes pour mon application.
Encore merci pour l'aide, Hervé
'scuses !
J'ai oublié de te préciser de rajouter un include dans le .h de ton unité
Code : Sélectionner tout - Visualiser dans une fenêtre à part #include "jpeg.hpp"
Le composant TJvScreenCapture de la JVCL fait ça tout seul comme un grand![]()
Partager