![]() |
Delphi-Version: 5
Drucken, einzelne Texte 90° gedreht
Hallo Profis,
habe wieder ein Problem. Beim Ausdrucken von technischen Daten eines Bauteiles würde ich gerne ein paar Maßzahlen 90° gedreht auf das Papier bringen. Habe hier im Forum etwas gefunden, das sieht so aus
Delphi-Quellcode:
Das funktionier auch soweit. Nicht aber wenn ich den Druckauftrag ein zweites mal starte.
with Printer.Canvas do
begin try AcFont := Font; Recall := TFontRecall(Font); Font.Orientation := 2700; BText := Form1.Edit1.Text; // Höhe Fläche THoch := TextWidth(BText); TBreit := TextHeight(BText); TextOut(XPos + 855 - TBreit - 5, YPos - 225 - Trunc(THoch / 2), BText); finally Font.Orientation := 0; Recall.Free; Font := AcFont; end; end; end; Dann meldet sich das Progamm mit "ungültige Zeigeroperation", nach dem Beenden erscheint dann auch Runtime error 217 at 004089D5. Was mich zusätzlich wundert ist, dass nach dem Recall.Free eigentlich die 90° Drehung der Schrift aufgehoben sein sollte. Ist sie aber nicht, deshalb musste ich die Drehung auf 0° setzten. Habe es auf verschiedenen Druckern im Netzwerk probiert, bei allen die selben Fehler. Ganz schlecht funktioniert der im Windows 10 enthaltene "Microsoft print to PDF". Printer.Enddoc schließt den Druckauftrag zwar ab, jedoch werden Einstellungen für den nächsten Druckjob weiterverwendet. Hätte jemand einen Tipp wie ich das Problem lösen könnte? |
AW: Drucken, einzelne Texte 90° gedreht
Zitat:
Ohne es getestet zu haben, wuerde ich es wie folgt programmieren:
Delphi-Quellcode:
with Printer.Canvas do
begin try Recall := TFontRecall.Create(Font); //... Recall.Free; end; end; end; |
AW: Drucken, einzelne Texte 90° gedreht
Danke, das war's!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:55 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