Hi,
ich hab in meinem Programm eine Funktion zum Drucken (ohne MFC), damit das mit
verschiedenen Auflösungen Funktioniert habe ich den Drucker Device Context mit den
Funktionen:
SetMapMode(pd.hDC, MM_ANISOTROPIC);
SetWindowOrgEx(pd.hDC, 0, 0,0);
SetWindowExtEx(pd.hDC, 600, 600,0); // logical window is 600 dpi
SetViewportOrgEx(pd.hDC, 0, 0,0);
SetViewportExtEx(pd.hDC, GetDeviceCaps(pd.hDC, LOGPIXELSX),
GetDeviceCaps(pd.hDC, LOGPIXELSY),0);
[/PHP]
festgelegt und dann bei der Funktion [i]TextOut[/i] die Koordinaten anhand der
DPI einstellung berechnet.
Das seltsame ist nur das es bei Win98 einwandfrei klappt und bei WinXP bei dem selben
Drucker und der selben Auflösung nicht klappt.
Die logische Größe des Blattes und die logischen Koordinaten sind bei 98 und XP gleich
(sollte ja auch so sein) trotzdem druckt er etwas, das er bei 98 ganz unten aufs Blatt schreibt,
bei XP (obwohl Koordinaten gleich) in die Mitte des Blattes.
Hat irgendwer ne Idee?
Gruß
Guybrush