![]() |
TImage: Bild mit TPrintDialog ausdrucken
Hallo,
ich möchte mit einem TPrintDialog ein Bild eines TImage ausdrucken. Da ich ja zuerst die DP-Suche mit einem Problem beschäftige, hab ich einen alten ![]() Ich habe das wie folgt auf meine Bedürfnisse umgebaut:
Code:
Leider druckt der das Bild nicht.
private
Bild_Dateiname: TFileName; { ... } procedure TForm1.Menu_oeffnenClick(Sender: TObject); begin //Bild öffnen If OpenPictureDialog.Execute then begin //ausgewählter Dateiname in Variable speichern Bild_Dateiname := OpenPictureDialog.FileName; //ausgewähltes Bild in das Image laden Image.Picture.LoadFromFile(Bild_Dateiname); end; end; procedure TForm1.Menu_DruckenClick(Sender: TObject); var tf: TextFile; begin if PrintDialog.Execute then begin AssignFile(tf, Bild_Dateiname); Rewrite(tf); WriteLn(tf, Bild_Dateiname); end; CloseFile(tf); end; Weiss jemand wie ich das umschreiben muss, damit der das Bild des Images druckt? |
Re: TImage: Bild mit TPrintDialog ausdrucken
Umschreiben ist gut. Du musst eine komplette Druckroutine schreiben. Sprich du musst das Image auf dem Canvas des Druckers ausgeben. Stichworte wäre eventuell
![]() ![]() |
Re: TImage: Bild mit TPrintDialog ausdrucken
Hallo,
ich hab mich mal etwas schlau gemacht und hab das so gelöst:
Code:
procedure TForm1.Menu_DruckenClick(Sender: TObject);
var ScaleX, ScaleY: Integer; R: TRect; begin //PrintDialog annzeigen If PrintDialog.Execute then begin with Printer do begin //Anzahl der Kopien Copies := PrintDialog.Copies; BeginDoc; try ScaleX := GetDeviceCaps(Handle, logPixelsX) div PixelsPerInch; ScaleY := GetDeviceCaps(Handle, logPixelsY) div PixelsPerInch; R := Rect(0, 0, Image.Picture.Width * ScaleX, Image.Picture.Height * ScaleY); Canvas.StretchDraw(R, Image.Picture.Graphic); finally EndDoc; end; end; end; end; |
Re: TImage: Bild mit TPrintDialog ausdrucken
Hallo
Ich habe das problem bei den Delphi code bei
Delphi-Quellcode:
er kennt den "befehl" 'Printer' nicht
with Printer do
MfG SiL_ |
Re: TImage: Bild mit TPrintDialog ausdrucken
Hi,
Delphi-Quellcode:
hilft.
uses printers;
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:31 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