[PATCH] wineps.drv: All map modes should have inverted y-transforms.

Alexander Kochetkov al.kochet at gmail.com
Wed Feb 9 18:18:56 CST 2011


Should fix 26014.
I will attach test program to bug 26014 to assert this modification.
-------------- next part --------------
From 11c33529cea9b2bc2253ae8dba994093f555c683 Mon Sep 17 00:00:00 2001
From: Alexander Kochetkov <al.kochet at gmail.com>
Date: Thu, 10 Feb 2011 03:08:12 +0300
Subject: [PATCH] wineps.drv: All map modes should have inverted y-transforms.

---
 dlls/wineps.drv/download.c |   13 ++-----------
 1 files changed, 2 insertions(+), 11 deletions(-)

diff --git a/dlls/wineps.drv/download.c b/dlls/wineps.drv/download.c
index 52de752..cc57ae1 100644
--- a/dlls/wineps.drv/download.c
+++ b/dlls/wineps.drv/download.c
@@ -280,17 +280,8 @@ BOOL PSDRV_WriteSetDownloadFont(PSDRV_PDEVICE *physDev)
 
     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);
-    physDev->font.size.yy = ps_round(ppem * xform.eM22);
-
-    switch(GetMapMode(physDev->hdc))
-    {
-    case MM_TEXT:
-    case MM_ISOTROPIC:
-    case MM_ANISOTROPIC:
-        physDev->font.size.yx *= -1;
-        physDev->font.size.yy *= -1;
-    }
+    physDev->font.size.yx = -ps_round(ppem * xform.eM21);
+    physDev->font.size.yy = -ps_round(ppem * xform.eM22);
 
     physDev->font.underlineThickness = potm->otmsUnderscoreSize;
     physDev->font.underlinePosition = potm->otmsUnderscorePosition;
-- 
1.7.0.4


More information about the wine-patches mailing list