https://git.reactos.org/?p=reactos.git;a=commitdiff;h=0e4db883e5727569b5c3a3...
commit 0e4db883e5727569b5c3a35da3a6f8c5e921bbf3 Author: Katayama Hirofumi MZ katayama.hirofumi.mz@gmail.com AuthorDate: Fri Jul 26 19:13:00 2019 +0900 Commit: Katayama Hirofumi MZ katayama.hirofumi.mz@gmail.com CommitDate: Fri Jul 26 19:13:00 2019 +0900
[WIN32SS][NTGDI] text/font vertical alignment patch CORE-16133
Based on Doug Lyons' patch. It partially fix CORE-16246 and CORE-16133. Selection area is not fixed yet. --- win32ss/gdi/ntgdi/freetype.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/win32ss/gdi/ntgdi/freetype.c b/win32ss/gdi/ntgdi/freetype.c index 4e4d4f6f8fd..162df2a2708 100644 --- a/win32ss/gdi/ntgdi/freetype.c +++ b/win32ss/gdi/ntgdi/freetype.c @@ -5916,9 +5916,9 @@ IntExtTextOutW( * Process the vertical alignment and determine the yoff. */ #define VALIGN_MASK (TA_TOP | TA_BASELINE | TA_BOTTOM) - if ((pdcattr->lTextAlign & VALIGN_MASK) == TA_BASELINE) + if ((pdcattr->flTextAlign & VALIGN_MASK) == TA_BASELINE) yoff = 0; - else if ((pdcattr->lTextAlign & VALIGN_MASK) == TA_BOTTOM) + else if ((pdcattr->flTextAlign & VALIGN_MASK) == TA_BOTTOM) yoff = -(fixDescender >> 6); else /* TA_TOP */ yoff = fixAscender >> 6;