Nikolay Sivov : dwrite: Fix vector transformation in GetGlyphOrientationTransform().

Alexandre Julliard julliard at wine.codeweavers.com
Thu Jul 16 08:37:19 CDT 2015


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

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Thu Jul 16 13:12:29 2015 +0300

dwrite: Fix vector transformation in GetGlyphOrientationTransform().

---

 dlls/dwrite/analyzer.c | 18 ++----------------
 1 file changed, 2 insertions(+), 16 deletions(-)

diff --git a/dlls/dwrite/analyzer.c b/dlls/dwrite/analyzer.c
index 62893e6..eedb41d 100644
--- a/dlls/dwrite/analyzer.c
+++ b/dlls/dwrite/analyzer.c
@@ -1507,22 +1507,8 @@ static HRESULT WINAPI dwritetextanalyzer2_GetGlyphOrientationTransform(IDWriteTe
     /* shift components represent transform necessary to get from original point to
        rotated one in new coordinate system */
     if ((originX != 0.0 || originY != 0.0) && angle != DWRITE_GLYPH_ORIENTATION_ANGLE_0_DEGREES) {
-        const DWRITE_MATRIX *p;
-
-        switch (angle) {
-        case DWRITE_GLYPH_ORIENTATION_ANGLE_90_DEGREES:
-            angle = DWRITE_GLYPH_ORIENTATION_ANGLE_270_DEGREES;
-            break;
-        case DWRITE_GLYPH_ORIENTATION_ANGLE_270_DEGREES:
-            angle = DWRITE_GLYPH_ORIENTATION_ANGLE_90_DEGREES;
-            break;
-        default:
-            ;
-        }
-
-        p = &transforms[angle];
-        m->dx = originX - (p->m11 * originX + p->m12 * originY);
-        m->dy = originY - (p->m21 * originX + p->m22 * originY);
+        m->dx = originX - (m->m11 * originX + m->m21 * originY);
+        m->dy = originY - (m->m12 * originX + m->m22 * originY);
     }
 
     return S_OK;




More information about the wine-cvs mailing list