From cdf7444505a7ae49d20f9ba6776dea92c1fde2a6 Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Wed, 11 Jul 2012 18:52:39 -0400 Subject: [PATCH] [ft] Use unfitted kerning if x_ppem is zero --- src/hb-ft.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/hb-ft.cc b/src/hb-ft.cc index 0589c9eaa..17c68dfda 100644 --- a/src/hb-ft.cc +++ b/src/hb-ft.cc @@ -158,7 +158,7 @@ hb_ft_get_glyph_v_origin (hb_font_t *font HB_UNUSED, } static hb_position_t -hb_ft_get_glyph_h_kerning (hb_font_t *font HB_UNUSED, +hb_ft_get_glyph_h_kerning (hb_font_t *font, void *font_data, hb_codepoint_t left_glyph, hb_codepoint_t right_glyph, @@ -167,7 +167,8 @@ hb_ft_get_glyph_h_kerning (hb_font_t *font HB_UNUSED, FT_Face ft_face = (FT_Face) font_data; FT_Vector kerningv; - if (FT_Get_Kerning (ft_face, left_glyph, right_glyph, FT_KERNING_DEFAULT, &kerningv)) + FT_Kerning_Mode mode = font->x_ppem ? FT_KERNING_DEFAULT : FT_KERNING_UNFITTED; + if (FT_Get_Kerning (ft_face, left_glyph, right_glyph, mode, &kerningv)) return 0; return kerningv.x;