Module: wine Branch: stable Commit: b5967fcaf93bb4867056bd3d4a14378d663acab3 URL: http://source.winehq.org/git/wine.git/?a=commit;h=b5967fcaf93bb4867056bd3d4a...
Author: Alexander Kochetkov al.kochet@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);