![]() |
canvas image vergrößen
ich bin blutiger anfänger im programmieren, deshalb bräuchte ich eure hilfe. ich habe es hinbekommen, dass ich mit canvas ein image ausdrucken kann, jedoch klebt der oben in der linken ecke und ist viel zuklein. Wie kann ich den vergrößern...
Code:
Danke schonmal im voraus...
procedure TForm1.Drucken1Click(Sender: TObject);
begin if printdialog1.execute then begin printer.begindoc; printer.canvas.draw(0,0,Image1.Picture.Graphic ); printer.enddoc; end; end; Anna |
Re: canvas image vergrößen
Hallo,
ich hatte mal dafür eine Procedure geschrieben:
Delphi-Quellcode:
Es gibt sicherlich noch andere Möglichkeiten.
Procedure DruckPos(iLeft, iTop, Zoom: integer; Graphic: TGraphic);
begin Printer.BeginDoc; SetMapMode(Printer.Canvas.Handle, MM_ISOTROPIC); SetWindowExtEx(Printer.Canvas.Handle, 1, 1, nil); SetViewportExtEx(Printer.Canvas.Handle, Zoom, Zoom, nil); Printer.Canvas.Draw(iLeft, iTop, Graphic); Printer.EndDoc; end; procedure TForm1.Button1Click(Sender: TObject); begin DruckPos(50, 80, 12, Image1.Picture.Bitmap); end; |
Re: canvas image vergrößen
Danke :thumb:
|
AW: canvas image vergrößen
ja, die einfachste möglichkeit waäre, das canvas des images auf das des druckers zu kopieren also:
if PrintDialog1.Execute then begin with Printer do begin Orientation:=poLandscape; BeginDoc; Canvas.copyrect(Rect(0,0,PageWidth,PageHeight),Bil d.Canvas,Rect(0,0,Bild.Width,bild.Height)); EndDoc; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz