![]() |
AW: Drucker liefert unterschiedliche Fontgrößen
@Deddyh
hab ich mich so vertan? ich mein ich hätte eben soetwas gesehen. Mist, ist Freitag:
Delphi-Quellcode:
end;
procedure TPrinterCanvas.UpdateFont;
var FontSize: Integer; begin if GetDeviceCaps(Printer.DC, LOGPIXELSY) <> Font.PixelsPerInch then begin FontSize := Font.Size; Font.PixelsPerInch := GetDeviceCaps(Printer.DC, LOGPIXELSY); Font.Size := FontSize; end; Gruß K-H |
AW: Drucker liefert unterschiedliche Fontgrößen
Ich hab's jetzt folgendermassen gemacht:
Zu Beginn setze ich die folgenden Werte bzw. den folgenden Mode:
Delphi-Quellcode:
Die Angaben, die ich den Druckroutinen übergebe, sind in 0.1mm angrgeben, umgerechnet werden sie dann in Pixel:
GesamtHoehe := GetDeviceCaps(Handle, VERTSIZE)*10;
Gesamtbreite := GetDeviceCaps(Handle, HORZSIZE)*10; SetMapMode(Handle, MM_TEXT);
Delphi-Quellcode:
Scheint soweit zu funktionieren.
FUNCTION XPosition(const x:Integer):Integer;
BEGIN Result := Trunc(x * Printer.PageWidth / Gesamtbreite); END; FUNCTION YPosition(const y:Integer):Integer; BEGIN Result := Trunc(y * Printer.PageHeight / Gesamthoehe); END; FUNCTION XWidth(const x:Integer):Integer; BEGIN Result := Trunc(x / (Printer.PageWidth / Gesamtbreite)); END; FUNCTION YHeight(const y:Integer):Integer; BEGIN Result := Trunc(y / (Printer.PageHeight / Gesamthoehe)); END; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:04 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