Guybrush Threepwood Geschrieben 10. Oktober 2002 Teilen Geschrieben 10. Oktober 2002 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 10. Oktober 2002 Autor Teilen Geschrieben 10. Oktober 2002 Problem gelöst, wenn ich die 5 oben genannten Funktionen weglasse klappts. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.