Signed-off-by: Byeongsik Jeon bsjeon@hanmail.net --- At the MS Korean dual-width fonts embedded bitmap, full-width character's advance width is smaller than expected in wine. We can solve this problem by slightly changing the logic.
Ex. gulim.ttc:GulimChe EM=1024 AvgWidth=512 ppem=19px half-width character advance = 10px ppem=19px full-width character advance = 18px But, Wine expects 19px.
dlls/gdi32/freetype.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c index bddcd56837..cb804f8e5c 100644 --- a/dlls/gdi32/freetype.c +++ b/dlls/gdi32/freetype.c @@ -6839,9 +6839,7 @@ static FT_Vector get_advance_metric(GdiFont *incoming_font, GdiFont *font, em_scale = MulDiv(incoming_font->ppem, 1 << 16, incoming_font->ft_face->units_per_EM); avg_advance = pFT_MulFix(incoming_font->ntmAvgWidth, em_scale); - fixed_pitch_full = (avg_advance > 0 && - (base_advance + 63) >> 6 == - pFT_MulFix(incoming_font->ntmAvgWidth*2, em_scale)); + fixed_pitch_full = avg_advance > 0 && (base_advance + 63) >> 6 != avg_advance; if (fixed_pitch_full && !transMat) adv.x = (avg_advance * 2) << 6; }