![]() |
Canvas auf den Drucker schicken
Moin !
Auf meiner Canvas ist ein Graph gezeichnet, den ich mit Hilfe des Druckers auf Papier bannen möchte. Der Code dazu sieht so aus:
Delphi-Quellcode:
Leider kommt ausser dem Text mit dem Datum und der Uhrzeit nichts an (die Seite mit den Graphen ist auch nicht weiss, der Graph exisitiert also schon).
procedure Graphik_ausdrucken ();
var Feld : TRect; Faktor : integer; const X0 = 100; Y0 = 100; begin // Vergrößungerungsfaktor bestimmen Faktor := Trunc((Printer.PageWidth - (2 * X0)) / Form_Kurven.Graph_Kurven.Width); // Ausgabefeld festlegen Feld.Left := X0; Feld.Top := Y0; Feld.Right := X0 + Faktor * Form_Kurven.Graph_Kurven.Width; Feld.Bottom := Y0 + Faktor * Form_Kurven.Graph_Kurven.Height; if Main.PrintDialog.Execute then begin with Printer do begin BeginDoc; //Orientation := poLandscape ; //Canvas.Brush.Style := bsClear ; //Canvas.Font.Name := 'Courier New'; //Canvas.font.Style := [fsBold] ; //Canvas.TextOut (40,5,DateToStr(now)+' '+TimeToStr(now)); Canvas.StretchDraw(Feld,Form_Kurven.Graph_Kurven.Picture.Graphic); Enddoc; end; end; end; Meine Frage ist jetzt, wo mache ich den Fehler ? Grüße und Danke ! [edit=SirThornberry]Delphi-Tags gesetzt - Mfg, SirThornberry[/edit] |
Re: Canvas auf den Drucker schicken
Interessant !
Nachdem ich eine Hintergrundgraphik in das TImage geladen hatte, wurde plötzlich gedruckt (Hintergrundgraphik und meine Zeichnung). Allerdings bei einem 2bit nur Schwarz /weiss und bei einer 24bit Hintergrundgraphik auch vielfarbig. Dieses Thema kann geschlossen werden ! |
Re: Canvas auf den Drucker schicken
Für dieses Thema hab ich schon Lösungen gepostet. Bitte die Suche bemühen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:41 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