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 altenThread dazu gefunden. 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 BeginDoc und EndDoc. Der Druckdialog druck nichts aus, sondern dient nur dazu den Drucker auszuwählen und dortige Einstellungen zurückzugeben.
|
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 01:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz