Da steh ich nun, ich armer Tor! Und bin so klug als wie zuvor.
Zunächst an Th69:
GetFormImage hatte ich schon vorher in der Hilfe gelesen, konnte aber (zunächst) nicht erkennen, wie mir diese Funktion hilft (wie oft: Beispiel fehlt).
Aber weitere Recherchen und 2 Tage Kopfzerbrechen haben geholfen.
Habe mein Programm entkernt und nur die Druckroutine belassen. Wer die beigefügte Datei entzippt findet den Pascalcode und das Progrann in FormDrucken/Win32/Releasen (ggf. neu übersetzen)
Über den
PrinterSetUpDialog lassen sich die Ränder (Top und Left) einstellen. Die Größe (Scalierung) wurde meiner Anwendung angepasst (120%) und muss für andere Anwendungen ggf. verändert werden. Eine "Verfeinerung könnte sein, in dem auch der rechte Rand bzw. der untere Rand ausgewertet wird und die Scalierung aus der Differenz von oben/unten, links/rechts errechnet wird. Allerdings wäre hierbei auch auszuwerten, ob Hoch oder Querformat gedruckt wird (
PageSetupDialog.PageHeight und
PageWidth).
Ich hoffe, anderen hilft ein lauffähiges Beispiel.
Stichwort: Form1 drucken (Grafik drucken)
PS: 2 Rätsel auf ein Blatt: einfach den oberen Rand verschieben
Gruß hRb
Moderiert von Th69: Delphi-Tags hinzugefügt