diff options
Diffstat (limited to 'pango/pangofc-font.c')
-rw-r--r-- | pango/pangofc-font.c | 41 |
1 files changed, 5 insertions, 36 deletions
diff --git a/pango/pangofc-font.c b/pango/pangofc-font.c index d6e2d8fd..42a063e8 100644 --- a/pango/pangofc-font.c +++ b/pango/pangofc-font.c @@ -328,22 +328,11 @@ get_face_metrics (PangoFcFont *fcfont, FT_Vector_Transform (&vector, &ft_matrix); metrics->ascent = PANGO_UNITS_26_6 (vector.y); } - else if (fcfont->is_hinted || - (face->face_flags & FT_FACE_FLAG_SCALABLE) == 0) + else { metrics->descent = - PANGO_UNITS_26_6 (face->size->metrics.descender); metrics->ascent = PANGO_UNITS_26_6 (face->size->metrics.ascender); } - else - { - FT_Fixed ascender, descender; - - descender = FT_MulFix (face->descender, face->size->metrics.y_scale); - metrics->descent = - PANGO_UNITS_26_6 (descender); - - ascender = FT_MulFix (face->ascender, face->size->metrics.y_scale); - metrics->ascent = PANGO_UNITS_26_6 (ascender); - } /* Versions of FreeType < 2.1.8 get underline thickness wrong * for Postscript fonts (always zero), so we need a fallback @@ -381,14 +370,8 @@ get_face_metrics (PangoFcFont *fcfont, metrics->strikethrough_position = (PANGO_SCALE * face->size->metrics.y_ppem) / 4; } - /* If hinting is on for this font, quantize the underline and strikethrough position - * to integer values. - */ - if (fcfont->is_hinted) - { - quantize_position (&metrics->underline_thickness, &metrics->underline_position); - quantize_position (&metrics->strikethrough_thickness, &metrics->strikethrough_position); - } + quantize_position (&metrics->underline_thickness, &metrics->underline_position); + quantize_position (&metrics->strikethrough_thickness, &metrics->strikethrough_position); PANGO_FC_FONT_UNLOCK_FACE (fcfont); } @@ -847,22 +830,8 @@ pango_fc_font_get_raw_extents (PangoFcFont *fcfont, { logical_rect->x = 0; logical_rect->width = PANGO_UNITS_26_6 (gm->horiAdvance); - if (fcfont->is_hinted || - (face->face_flags & FT_FACE_FLAG_SCALABLE) == 0) - { - logical_rect->y = - PANGO_UNITS_26_6 (face->size->metrics.ascender); - logical_rect->height = PANGO_UNITS_26_6 (face->size->metrics.ascender - face->size->metrics.descender); - } - else - { - FT_Fixed ascender, descender; - - ascender = FT_MulFix (face->ascender, face->size->metrics.y_scale); - descender = FT_MulFix (face->descender, face->size->metrics.y_scale); - - logical_rect->y = - PANGO_UNITS_26_6 (ascender); - logical_rect->height = PANGO_UNITS_26_6 (ascender - descender); - } + logical_rect->y = - PANGO_UNITS_26_6 (face->size->metrics.ascender); + logical_rect->height = PANGO_UNITS_26_6 (face->size->metrics.ascender - face->size->metrics.descender); } } else |