Bonjour à tous
Je cherche à imprimer une zone de dessin et pour commencer et apprendre, j'ai utilisé le code suivant trouvé dans les tutoriels Delphi.
Or, l'imprimante se lance mais n'imprime rien, une feuille blanche sort.
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
25
26
27
procedure TForm4.Button8Click(Sender: TObject);
var
 H: integer;
 
begin
 
 //H := GetDc(GetDeskTopWindow);   {Obtention d'un handle de device context sur l'écran}
 {Impression sur le canvas imprimante de la représentation graphique du hdc de l'écran}
 {On utilise StretchBlt pour redimensionner la source à la taille de la destination }
   H := GetDc(GetDeskTopWindow);
 With Printer do
  begin
 
  Begindoc;
 
  StretchBlt(Self.Canvas.Handle,
                    0,0,
                   self.Width, self.Height,
                   H,
                   0,0,
                  Screen.Width, Screen.Height,
                  SRCCOPY);
   EndDoc;
  releaseDc(handle, H);  {ne pas oublier de relacher le hdc}
 
 end;
 end;
Quelqu'un aurait-il une piste pour avancer
Merci d'avance