Voila, suite a un traitement, j'ai une image que je suis succeptible d'imprimer, mais j'aimerais savoir comment on fait pour l'imprimer, quelque soit la taille, sur une seule page!
Voila, suite a un traitement, j'ai une image que je suis succeptible d'imprimer, mais j'aimerais savoir comment on fait pour l'imprimer, quelque soit la taille, sur une seule page!
Tu peut utiliser la classe TPrinter, il suffit de mettre dans le canvas de ton TPrinter une image grace a la fonction DrawFocusRect, en lui spécifiant le rectangle dans lequel tu veut qu'elle s'affiche (Objet TRect qui spécifie les taille de la largeur et de la hauteur)
en regardant la classe TPrinter, j'ai vu canvas comme tu me l'avais dit
si je met le code la, ca marcherai? Image1 est une image avec proportional true
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 void __fastcall TForm1::Button1Click(TObject *Sender) { TPrinter Prntr = Printer(); Image1->Width = Prntr->PageWidth; Image1->Height = Prntr->PageHeight; Prntr->BeginDoc(); Prntr->Canvas = Image1->Canvas); Prntr->EndDoc(); }
Tu peut essayer, a mon avis ca imprimerait bien l'image mais cela ne serai pas proportionnel a ta feuille, pour cela il faut vraiment utiliser la fonction que je t'ai donné.
je travaillerai ca demiain, je mettrait mon resultat quand j'aurai troouvé^^
Excuse moi, la fonction est StretchDraw
Le code n'est pas très compliqué :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 void __fastcall TForm1::Button1Click(TObject *Sender) { TPrinter Prntr = Printer(); TRect Rect ; //Definir le coordonnée du Rect. Image1->Width = Prntr->PageWidth; Image1->Height = Prntr->PageHeight; Prntr->BeginDoc(); Prntr->Canvas->StretchDraw(Image1->Picture,Rect); Prntr->EndDoc(); }
Partager