Alexander Kochetkov : wineps.drv: Disable world transform for fonts in GM_COMPATIBLE mode.
Alexandre Julliard
julliard at winehq.org
Thu Apr 7 07:36:47 CDT 2011
Module: wine
Branch: stable
Commit: b5967fcaf93bb4867056bd3d4a14378d663acab3
URL: http://source.winehq.org/git/wine.git/?a=commit;h=b5967fcaf93bb4867056bd3d4a14378d663acab3
Author: Alexander Kochetkov <al.kochet at gmail.com>
Date: Fri Jan 14 03:18:19 2011 +0300
wineps.drv: Disable world transform for fonts in GM_COMPATIBLE mode.
(cherry picked from commit 69f88da1879cc850113e5f55d0cb85fd13ea2701)
---
dlls/wineps.drv/download.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/dlls/wineps.drv/download.c b/dlls/wineps.drv/download.c
index 9ad8a2c..52de752 100644
--- a/dlls/wineps.drv/download.c
+++ b/dlls/wineps.drv/download.c
@@ -20,6 +20,7 @@
#include <string.h>
#include <stdlib.h>
#include <assert.h>
+#include <math.h>
#include <stdarg.h>
#include <stdio.h>
@@ -271,6 +272,12 @@ BOOL PSDRV_WriteSetDownloadFont(PSDRV_PDEVICE *physDev)
/* Retrieve the world -> device transform */
GetTransform(physDev->hdc, 0x204, &xform);
+ if(GetGraphicsMode(physDev->hdc) == GM_COMPATIBLE)
+ {
+ xform.eM11 = xform.eM22 = fabs(xform.eM22);
+ xform.eM21 = xform.eM12 = 0;
+ }
+
physDev->font.size.xx = ps_round(ppem * xform.eM11);
physDev->font.size.xy = ps_round(ppem * xform.eM12);
physDev->font.size.yx = ps_round(ppem * xform.eM21);
More information about the wine-cvs
mailing list