[PATCH 2/2] gdiplus: Set font emSize to height minus internal leading.

Shawn M. Chapla schapla at codeweavers.com
Tue Jul 14 20:24:57 CDT 2020


Signed-off-by: Shawn M. Chapla <schapla at codeweavers.com>
---
 dlls/gdiplus/font.c       | 2 +-
 dlls/gdiplus/tests/font.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/gdiplus/font.c b/dlls/gdiplus/font.c
index a7719a9458..eb0b6c0836 100644
--- a/dlls/gdiplus/font.c
+++ b/dlls/gdiplus/font.c
@@ -219,7 +219,7 @@ GpStatus WINGDIPAPI GdipCreateFontFromLogfontW(HDC hdc,
     if (!*font) return OutOfMemory;
 
     (*font)->unit = UnitWorld;
-    (*font)->emSize = otm.otmTextMetrics.tmAscent;
+    (*font)->emSize = otm.otmTextMetrics.tmHeight - otm.otmTextMetrics.tmInternalLeading;
     (*font)->otm = otm;
 
     stat = GdipCreateFontFamilyFromName(facename, NULL, &(*font)->family);
diff --git a/dlls/gdiplus/tests/font.c b/dlls/gdiplus/tests/font.c
index 74cf451e36..b762f7c45f 100644
--- a/dlls/gdiplus/tests/font.c
+++ b/dlls/gdiplus/tests/font.c
@@ -344,7 +344,7 @@ static void test_logfont(void)
 
             stat = GdipGetFontSize(font, &rval);
             expect(Ok, stat);
-            todo_wine expectf(test_sizes[i].expected, rval);
+            expectf(test_sizes[i].expected, rval);
 
             GdipDeleteFont(font);
             font = NULL;
-- 
2.27.0




More information about the wine-devel mailing list