typedef PangoOTTag;
struct PangoOTInfo;
struct PangoOTRuleset;
enum PangoOTTableType;
PangoOTInfo* pango_ot_info_new (FT_Face face);
gboolean pango_ot_info_find_script (PangoOTInfo *info,
PangoOTTableType table_type,
PangoOTTag script_tag,
guint *script_index);
gboolean pango_ot_info_find_language (PangoOTInfo *info,
PangoOTTableType table_type,
guint script_index,
PangoOTTag language_tag,
guint *language_index,
guint *required_feature_index);
gboolean pango_ot_info_find_feature (PangoOTInfo *info,
PangoOTTableType table_type,
PangoOTTag feature_tag,
guint script_index,
guint language_index,
guint *feature_index);
PangoOTTag* pango_ot_info_list_scripts (PangoOTInfo *info,
PangoOTTableType table_type);
PangoOTTag* pango_ot_info_list_languages (PangoOTInfo *info,
PangoOTTableType table_type,
guint script_index,
PangoOTTag language_tag);
PangoOTTag* pango_ot_info_list_features (PangoOTInfo *info,
PangoOTTableType table_type,
PangoOTTag tag,
guint script_index,
guint language_index);
FT_Error (*PangoOTGlyphLoader) (FT_Face face,
FT_UInt glyphIndex,
FT_Int loadFlags,
gpointer data);
FT_UShort (*PangoOTAlternateFunc) (FT_ULong pos,
FT_UShort glyphID,
FT_UShort num_alternates,
FT_UShort *alternates,
gpointer data);
PangoOTRuleset* pango_ot_ruleset_new (PangoOTInfo *info);
void pango_ot_ruleset_set_glyph_loader
(PangoOTRuleset *ruleset,
PangoOTGlyphLoader func,
gpointer data,
GDestroyNotify notify);
void pango_ot_ruleset_set_alternate_func
(PangoOTRuleset *ruleset,
PangoOTAlternateFunc func,
gpointer data,
GDestroyNotify notify);
void pango_ot_ruleset_add_feature (PangoOTRuleset *ruleset,
PangoOTTableType table_type,
guint feature_index,
gulong property_bit);
void pango_ot_ruleset_shape (PangoOTRuleset *ruleset,
PangoGlyphString *glyphs,
gulong *properties); |