diff options
Diffstat (limited to 'pango')
-rw-r--r-- | pango/pangoxft-font.c | 40 | ||||
-rw-r--r-- | pango/pangoxft.h | 5 |
2 files changed, 42 insertions, 3 deletions
diff --git a/pango/pangoxft-font.c b/pango/pangoxft-font.c index 4f82bb8e..9f505a7e 100644 --- a/pango/pangoxft-font.c +++ b/pango/pangoxft-font.c @@ -841,8 +841,21 @@ pango_xft_font_unlock_face (PangoFont *font) XftUnlockFace (xft_font); } +/** + * pango_xft_font_get_glyph: + * @font: a #PangoFont for the Xft backend + * @wc: Unicode codepoint to look up + * + * Gets the glyph index for a given unicode codepoint + * for @font. If you only want to determine + * whether the font has the glyph, use pango_xft_font_has_char(). + * + * Return value: the glyph index, or 0, if the unicode + * codepoint doesn't exist in the font. + **/ guint -pango_xft_font_get_glyph (PangoFont *font, gunichar wc) +pango_xft_font_get_glyph (PangoFont *font, + gunichar wc) { XftFont *xft_font; @@ -850,5 +863,28 @@ pango_xft_font_get_glyph (PangoFont *font, gunichar wc) xft_font = pango_xft_font_get_font (font); - return XftCharIndex (0, xft_font, wc); + return XftCharIndex (NULL, xft_font, wc); } + +/** + * pango_xft_font_has_char: + * @font: a #PangoFont for the Xft backend + * @wc: Unicode codepoint to look up + * + * Determines whether @font has a glyph for the codepoint @wc. + * + * Return value: %TRUE if @font has the requested codepoint. + **/ +gboolean +pango_xft_font_has_char (PangoFont *font, + gunichar wc) +{ + XftFont *xft_font; + + g_return_val_if_fail (PANGO_XFT_IS_FONT (font), 0); + + xft_font = pango_xft_font_get_font (font); + + return XftCharExists (NULL, xft_font, wc); +} + diff --git a/pango/pangoxft.h b/pango/pangoxft.h index 24f14b7e..2fa381f8 100644 --- a/pango/pangoxft.h +++ b/pango/pangoxft.h @@ -80,7 +80,10 @@ GType pango_xft_font_get_type (void); XftFont * pango_xft_font_get_font (PangoFont *font); FT_Face pango_xft_font_lock_face (PangoFont *font); void pango_xft_font_unlock_face (PangoFont *font); -guint pango_xft_font_get_glyph (PangoFont *font, gunichar wc); +guint pango_xft_font_get_glyph (PangoFont *font, + gunichar wc); +gboolean pango_xft_font_has_char (PangoFont *font, + gunichar wc); Display * pango_xft_font_get_display (PangoFont *font); PangoGlyph pango_xft_font_get_unknown_glyph (PangoFont *font, gunichar wc); |