From e5276c766b25d19c35e5dd2e0394e9d336db4410 Mon Sep 17 00:00:00 2001 From: Nikolay Sivov Date: Thu, 2 Nov 2017 13:15:34 +0300 Subject: [PATCH] dwrite: Set lfItalic style to get more compatible results for gdiinterop. Signed-off-by: Nikolay Sivov Signed-off-by: Alexandre Julliard --- dlls/dwrite/opentype.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/dlls/dwrite/opentype.c b/dlls/dwrite/opentype.c index 4f570f586c2..18fb00be09a 100644 --- a/dlls/dwrite/opentype.c +++ b/dlls/dwrite/opentype.c @@ -1375,6 +1375,7 @@ void opentype_get_font_properties(struct file_stream_desc *stream_desc, struct d props->style = DWRITE_FONT_STYLE_OBLIQUE; else if (fsSelection & OS2_FSSELECTION_ITALIC) props->style = DWRITE_FONT_STYLE_ITALIC; + props->lf.lfItalic = !!(fsSelection & OS2_FSSELECTION_ITALIC); memcpy(&props->panose, &tt_os2->panose, sizeof(props->panose)); @@ -1404,12 +1405,13 @@ void opentype_get_font_properties(struct file_stream_desc *stream_desc, struct d if (macStyle & TT_HEAD_MACSTYLE_BOLD) props->weight = DWRITE_FONT_WEIGHT_BOLD; - if (macStyle & TT_HEAD_MACSTYLE_ITALIC) + if (macStyle & TT_HEAD_MACSTYLE_ITALIC) { props->style = DWRITE_FONT_STYLE_ITALIC; + props->lf.lfItalic = 1; + } } props->lf.lfWeight = props->weight; - props->lf.lfItalic = props->style == DWRITE_FONT_STYLE_ITALIC; TRACE("stretch=%d, weight=%d, style %d\n", props->stretch, props->weight, props->style);