diff --git a/src/hb-ft.cc b/src/hb-ft.cc index 56309647b07d78f02ba00e0e5bbb1b0a3689c838..9b872ea58f0f6db868b6bc007230edbc034162c0 100644 --- a/src/hb-ft.cc +++ b/src/hb-ft.cc @@ -277,6 +277,16 @@ hb_ft_get_glyph_extents (hb_font_t *font HB_UNUSED, extents->y_bearing = ft_face->glyph->metrics.horiBearingY; extents->width = ft_face->glyph->metrics.width; extents->height = -ft_face->glyph->metrics.height; + if (font->x_scale < 0) + { + extents->x_bearing = -extents->x_bearing; + extents->width = -extents->width; + } + if (font->y_scale < 0) + { + extents->y_bearing = -extents->y_bearing; + extents->height = -extents->height; + } return true; }