diff options
author | Behdad Esfahbod <behdad@gnome.org> | 2007-01-22 23:17:15 +0000 |
---|---|---|
committer | Behdad Esfahbod <behdad@src.gnome.org> | 2007-01-22 23:17:15 +0000 |
commit | a32f6025da958da04bb7df72aba2776933357ed0 (patch) | |
tree | 2e829681ee25517fd616fcd4b2f81d37b56b5ebd /pango | |
parent | 025f6441632acbfafa4d2f15714d2d60e6b40809 (diff) | |
download | pango-a32f6025da958da04bb7df72aba2776933357ed0.tar.gz |
Populate metrics for NULL/broken fonts. Now our glyph boxes have
2007-01-22 Behdad Esfahbod <behdad@gnome.org>
* pango/fonts.c (pango_font_get_metrics): Populate metrics for
NULL/broken fonts. Now our glyph boxes have underlines too. Yay!
svn path=/trunk/; revision=2178
Diffstat (limited to 'pango')
-rw-r--r-- | pango/fonts.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/pango/fonts.c b/pango/fonts.c index 91186a09..2bf5d70c 100644 --- a/pango/fonts.c +++ b/pango/fonts.c @@ -1338,13 +1338,25 @@ pango_font_get_metrics (PangoFont *font, { if (G_UNLIKELY (!PANGO_IS_FONT (font))) { + PangoFontMetrics *metrics; if (!_pango_warning_history.get_metrics) { _pango_warning_history.get_metrics = TRUE; g_warning (bad_font_warning, "pango_font_get_metrics"); } - return pango_font_metrics_new (); + metrics = pango_font_metrics_new (); + + metrics->ascent = PANGO_SCALE * PANGO_UNKNOWN_GLYPH_HEIGHT; + metrics->descent = 0; + metrics->approximate_char_width = PANGO_SCALE * PANGO_UNKNOWN_GLYPH_WIDTH; + metrics->approximate_digit_width = PANGO_SCALE * PANGO_UNKNOWN_GLYPH_WIDTH; + metrics->underline_position = -PANGO_SCALE; + metrics->underline_thickness = PANGO_SCALE; + metrics->strikethrough_position = PANGO_SCALE * PANGO_UNKNOWN_GLYPH_HEIGHT / 2; + metrics->strikethrough_thickness = PANGO_SCALE; + + return metrics; } return PANGO_FONT_GET_CLASS (font)->get_metrics (font, language); |