Alexandre Julliard : wineps: Print a fixme for unhandled composite glyph scaling.

Alexandre Julliard julliard at winehq.org
Tue Nov 15 13:17:33 CST 2011


Module: wine
Branch: master
Commit: 4801b91fd66ad23ffbd3a2604685a10c764d9180
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=4801b91fd66ad23ffbd3a2604685a10c764d9180

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Tue Nov 15 12:44:25 2011 +0100

wineps: Print a fixme for unhandled composite glyph scaling.

---

 dlls/wineps.drv/type1.c |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/dlls/wineps.drv/type1.c b/dlls/wineps.drv/type1.c
index e686853..fbda3de 100644
--- a/dlls/wineps.drv/type1.c
+++ b/dlls/wineps.drv/type1.c
@@ -414,7 +414,7 @@ static BOOL append_complex_glyph(HDC hdc, const BYTE *data, glyph_outline *outli
     const BYTE *ptr = data;
     WORD flags, index;
     short arg1, arg2;
-    WORD scale_xx = 1, scale_xy = 0, scale_yx = 0, scale_yy = 1;
+    WORD scale_xx = 1 << 14, scale_xy = 0, scale_yx = 0, scale_yy = 1 << 14;
     WORD start_pt, end_pt;
 
     ptr += 10;
@@ -460,6 +460,11 @@ static BOOL append_complex_glyph(HDC hdc, const BYTE *data, glyph_outline *outli
             ptr += 2;
         }
 
+        if ((flags & (WE_HAVE_A_SCALE | WE_HAVE_AN_X_AND_Y_SCALE | WE_HAVE_A_TWO_BY_TWO)) &&
+            (scale_xx != 1 << 14 || scale_yy != 1 << 14 || scale_xy || scale_yx))
+            FIXME( "unhandled scaling %x,%x,%x,%x of glyph %x\n",
+                   scale_xx, scale_xy, scale_yx, scale_yy, index );
+
         start_pt = pts_in_outline(outline);
         append_glyph_outline(hdc, index, outline);
         end_pt = pts_in_outline(outline);




More information about the wine-cvs mailing list