Dmitry Timoshkov : gdiplus: If the font unit is not pixels scaling should not be applied.

Alexandre Julliard julliard at winehq.org
Thu Jan 23 15:48:50 CST 2020


Module: wine
Branch: master
Commit: b7ca0bc0434eacb6932deb14012759690c64714e
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=b7ca0bc0434eacb6932deb14012759690c64714e

Author: Dmitry Timoshkov <dmitry at baikal.ru>
Date:   Thu Jan 23 14:35:39 2020 +0800

gdiplus: If the font unit is not pixels scaling should not be applied.

Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
Signed-off-by: Vincent Povirk <vincent at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/gdiplus/graphics.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c
index e485e5c99f..c52fa65445 100644
--- a/dlls/gdiplus/graphics.c
+++ b/dlls/gdiplus/graphics.c
@@ -2276,6 +2276,12 @@ static void get_font_hfont(GpGraphics *graphics, GDIPCONST GpFont *font,
                      (pt[1].X-pt[0].X)*(pt[1].X-pt[0].X));
     rel_height = sqrt((pt[2].Y-pt[0].Y)*(pt[2].Y-pt[0].Y)+
                       (pt[2].X-pt[0].X)*(pt[2].X-pt[0].X));
+    /* If the font unit is not pixels scaling should not be applied */
+    if (font->unit != UnitPixel && font->unit != UnitWorld)
+    {
+        rel_width /= graphics->scale;
+        rel_height /= graphics->scale;
+    }
 
     get_log_fontW(font, graphics, &lfw);
     lfw.lfHeight = -gdip_round(font_height * rel_height);




More information about the wine-cvs mailing list