diff options
author | Grigori Goronzy <greg@blackbox> | 2011-07-10 04:08:55 +0200 |
---|---|---|
committer | Grigori Goronzy <greg@blackbox> | 2011-07-11 13:05:02 +0200 |
commit | 4805334bf91444ba7e818145944f8236a64b0563 (patch) | |
tree | c20374d43fc1e3e5e238dd2952ed2307f4a0c881 /libass/ass_font.h | |
parent | e1b63bc3abfac4d1e994cbe46a4d3f820062b880 (diff) | |
download | libass-4805334bf91444ba7e818145944f8236a64b0563.tar.bz2 libass-4805334bf91444ba7e818145944f8236a64b0563.tar.xz |
Separate glyph font face matching and glyph loading
Split up ass_font_get_glyph into two functions: one function matches
checks the fonts for support of the requested codepoint and returns
a face_index and glyph_index to later load the glyph, with a second
function.
This approach is very useful for shaping, which needs to be done
on runs with the same font face and font size and changes the
glyph_index.
Diffstat (limited to 'libass/ass_font.h')
-rw-r--r-- | libass/ass_font.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libass/ass_font.h b/libass/ass_font.h index af40ce2..6b45adf 100644 --- a/libass/ass_font.h +++ b/libass/ass_font.h @@ -60,8 +60,11 @@ void ass_font_set_transform(ASS_Font *font, double scale_x, void ass_font_set_size(ASS_Font *font, double size); void ass_font_get_asc_desc(ASS_Font *font, uint32_t ch, int *asc, int *desc); +int ass_font_get_index(void *fcpriv, ASS_Font *font, uint32_t symbol, + int *face_index, int *glyph_index); FT_Glyph ass_font_get_glyph(void *fontconfig_priv, ASS_Font *font, - uint32_t ch, ASS_Hinting hinting, int flags); + uint32_t ch, int face_index, int index, + ASS_Hinting hinting, int deco); FT_Vector ass_font_get_kerning(ASS_Font *font, uint32_t c1, uint32_t c2); void ass_font_free(ASS_Font *font); void fix_freetype_stroker(FT_Outline *outline, int border_x, int border_y); |