Einzelnen Beitrag anzeigen

stefanniehaus

Registriert seit: 3. Mär 2005
11 Beiträge
 
Delphi XE2 Professional
 
#9

AW: Druckausgabe über Printer / Problem mit einigen Schriftarten

  Alt 30. Jan 2013, 08:45
Das wage ich zu bezweifeln, oder administrierst Du das Programm mit täglicher Wartung dein Leben lang?
Es wird vorher geprüft ob die Schriftart auf dem System vorhanden ist. Ist sie das nicht, wird nicht gedruckt.

Das Problem ist doch gelöst, wenn Du dieses unselige MM_LOMETRIC wegläßt, was niemand braucht. Die logische Einheit mm von MM_LOMETRIC hat nichts, aber auch garnichts mit der Umrechnung mm/Pixel bzw. dem Maßsystem des Endformates zu tun! Zumal das Endgerät zwar mm im Ausgabeformat hat, aber im Gegensatz zu MM_LOMETRIC, das gleiche Einheiten in x und y setzt, das Endgerät in x und y verschiedene dpi haben kann. Aber diese Werte kennt canvas, weil sie per Treiber ermittelt werden (DeviceCaps des Printers).

Es wird immer von mm auf Pixel umgerechnet, weil jeder Drucker mm-Formate als Ausgabemedium hat und Canvas immer Pixelorientiert ist - alle Canvas-Proceduren erwarten Pixel als Werte.
Das Problem ist nicht gelöst, da - wie oben beschrieben - auch ohne Verwendung von SetMapMode und mit Verwendung von Pixel-Angaben es zur Stauchung kommen kann, je nach Drucker (im o.g. Beispiel: Keine Stauchung beim PDF-Drucker, Stauchung bei einem HP-Drucker (jeweils bei ohne MM_LOMETRIC))
Bei Arial beispielsweise kommt es in keinem Fall zur Stauchung.
  Mit Zitat antworten Zitat