![]() |
Blattbreite u -Höhe außerhalb außerhalb v BeginDoc in 1/10mm
Hallo, um eine Druckvorschau zu realisieren brauch ich die Breite und Höhe des Blattes (nicht in Pixeln).
Mein erster Gedanke war mit SetMapMode(Printer.Canvas.Handle, MM_LOMETRIC); die einheit maßeinheit zu setzen und danach mit printer.pagewith oder ähnlichem die Breite des Blattes abzufragen. Das Problem ist aber das SetMapMode(Printer.Canvas.Handle, MM_LOMETRIC); nicht vor printer.BeginDoc stehen darf. Was gibts noch für Möglichkeiten die Breite rauszufinden?? (Blattränder sind mir egal) |
Re: Blattbreite u -Höhe außerhalb außerhalb v BeginDoc in 1/
Hallo,
mit GetDeviceCaps kannst Du die erforderlichen Info's abfragen.
Code:
Breite:=GetDeviceCaps(Printer.Handle, HORZSIZE); // Breite in mm
Hoehe:=GetDeviceCaps(Printer.Handle, VWERTSIZE); // Höhe in mm |
Re: Blattbreite u -Höhe außerhalb außerhalb v BeginDoc in 1/
hab en Lösung gefunden:
Delphi-Quellcode:
hatte es vorher mit
[...]
breite := getdevicecaps(printer.Handle, HORZSIZE) * 10; [...] breite := getdevicecaps(printer.canvas.Handle, HORZSIZE) * 10; versucht aber zugriff auf canvas ist ja erst nach begindoc möglich. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:43 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