Hi,
ist ein typisches Problem beim Drucken, eigentlich solltest du da sehr sehr schnell mit der Suche fündig werden. Ich glaube die Funktion die das korrigiert heißt SetDeviceCaps (such einfach noch mal in der
DP).
Mit deiner Einschätzung liegst du gar nicht so falsch, allerdings variiert nur die Auflösung des Druckers. Wenn du dir einen Drucker kaufst, dann findest du hier ja auch Laserdrucker im Bereich von 600x600dpi oder 1200x1200dpi und Tintenstrahler, die hier ganz andere Werte liefern. An sich bekommst du damit sogar unterschiedliche Ausgaben auf dem selben Drucker, wenn du hier einfach mal die Auflösung änderst.
Die Standardeinheit, mit der du hier arbeitest sind einfach Pixel. Da die Auflösung der Anzahl von Pixeln pro Inch entspricht, regelst du damit also auch immer die Größe eines Pixels. SetDeviceCaps bietet da die Möglichkeit, dass du eine andere Einheit (z.B. zehntel-millimeter) verwendest, die dann unabhängig von der Pixelgröße ist.
Gruß Der Unwissende