27 #if !defined(HB_OT_H_IN) && !defined(HB_NO_SINGLE_HEADER_ERROR)
28 #error "Include <hb-ot.h> instead."
31 #ifndef HB_OT_LAYOUT_H
32 #define HB_OT_LAYOUT_H
46 #define HB_OT_TAG_BASE HB_TAG('B','A','S','E')
52 #define HB_OT_TAG_GDEF HB_TAG('G','D','E','F')
58 #define HB_OT_TAG_GSUB HB_TAG('G','S','U','B')
64 #define HB_OT_TAG_GPOS HB_TAG('G','P','O','S')
70 #define HB_OT_TAG_JSTF HB_TAG('J','S','T','F')
83 #define HB_OT_TAG_DEFAULT_SCRIPT HB_TAG ('D', 'F', 'L', 'T')
90 #define HB_OT_TAG_DEFAULT_LANGUAGE HB_TAG ('d', 'f', 'l', 't')
99 #define HB_OT_MAX_TAGS_PER_SCRIPT 3u
107 #define HB_OT_MAX_TAGS_PER_LANGUAGE 3u
112 unsigned int *script_count ,
114 unsigned int *language_count ,
171 unsigned int *point_count ,
172 unsigned int *point_array );
180 unsigned int *caret_count ,
193 #define HB_OT_LAYOUT_NO_SCRIPT_INDEX 0xFFFFu
199 #define HB_OT_LAYOUT_NO_FEATURE_INDEX 0xFFFFu
205 #define HB_OT_LAYOUT_DEFAULT_LANGUAGE_INDEX 0xFFFFu
211 #define HB_OT_LAYOUT_NO_VARIATIONS_INDEX 0xFFFFFFFFu
217 unsigned int *script_count ,
229 unsigned int script_count,
238 unsigned int *feature_count ,
246 unsigned int *language_count ,
253 unsigned int language_count,
262 unsigned int *feature_index );
269 unsigned int *feature_index ,
278 unsigned int *feature_count ,
279 unsigned int *feature_indexes );
287 unsigned int *feature_count ,
296 unsigned int *feature_index );
301 unsigned int feature_index,
303 unsigned int *lookup_count ,
304 unsigned int *lookup_indexes );
329 unsigned int lookup_index,
342 unsigned int num_coords,
343 unsigned int *variations_index );
348 unsigned int feature_index,
349 unsigned int variations_index,
351 unsigned int *lookup_count ,
352 unsigned int *lookup_indexes );
364 unsigned lookup_index,
367 unsigned *alternate_count ,
372 unsigned int lookup_index,
374 unsigned int glyphs_length,
379 unsigned int lookup_index,
400 unsigned int *design_size,
401 unsigned int *subfamily_id,
403 unsigned int *range_start,
404 unsigned int *range_end );
410 unsigned int feature_index,
414 unsigned int *num_named_parameters ,
421 unsigned int feature_index,
423 unsigned int *char_count ,
xD9 x84 xD8 xAD xD9 x80 xF0 x90 xAC x9A xE0 xA7 xA6 xE0 xA7 xAA xF0 x91 x84 xA4 xF0 x91 x84 x89 xF0 x91 x84 x9B xF0 x90 x8A xAB xF0 x90 x8B x89 xE2 xB2 x9E xE2 xB2 x9F xD0 xBE xD0 x9E xF0 x90 x90 x84 xF0 x90 x90 xAC xE1 x83 x98 xE1 x83 x94 xE1 x83 x90 xE1 xB2 xBF xE2 xB0 x95 xE2 xB1 x85 xCE xBF xCE x9F xE0 xA8 xA0 xE0 xA8 xB0 xE0 xA9 xA6 Kayah xEA xA4 x8D xEA xA4 x80 Khmer xE1 xA7 xA1 xE1 xA7 xAA xE0 xBB x90 Latin Subscript xE2 x82 x92 xE2 x82 x80 xEA x93 xB3 xF0 x96 xB9 xA1 xF0 x96 xB9 x9B xF0 x96 xB9 xAF xE1 x80 x9D xE1 x80 x84 xE1 x80 x82 no script
HB_EXTERN hb_tag_t const hb_tag_t unsigned int * script_index
HB_EXTERN hb_tag_t const hb_tag_t unsigned int hb_tag_t * chosen_script
HB_EXTERN hb_tag_t unsigned int hb_tag_t language_tag
HB_EXTERN unsigned int start_offset
HB_EXTERN hb_tag_t unsigned int hb_tag_t unsigned int * language_index
HB_EXTERN hb_tag_t const hb_tag_t * script_tags
HB_EXTERN hb_tag_t table_tag
unsigned int hb_ot_name_id_t
GLsizei const GLubyte GLsizei GLenum const void * coords
HB_BEGIN_DECLS typedef int hb_bool_t
#define HB_TAG(c1, c2, c3, c4)
#define HB_TAG_MAX_SIGNED
HB_EXTERN unsigned hb_ot_layout_lookup_get_glyph_alternates(hb_face_t *face, unsigned lookup_index, hb_codepoint_t glyph, unsigned start_offset, unsigned *alternate_count, hb_codepoint_t *alternate_glyphs)
HB_EXTERN unsigned int hb_ot_layout_feature_get_lookups(hb_face_t *face, hb_tag_t table_tag, unsigned int feature_index, unsigned int start_offset, unsigned int *lookup_count, unsigned int *lookup_indexes)
HB_EXTERN hb_bool_t hb_ot_layout_has_substitution(hb_face_t *face)
HB_EXTERN hb_bool_t hb_ot_layout_language_get_required_feature_index(hb_face_t *face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, unsigned int *feature_index)
HB_EXTERN void hb_ot_tags_to_script_and_language(hb_tag_t script_tag, hb_tag_t language_tag, hb_script_t *script, hb_language_t *language)
HB_EXTERN void hb_ot_layout_lookups_substitute_closure(hb_face_t *face, const hb_set_t *lookups, hb_set_t *glyphs)
HB_EXTERN void hb_ot_tags_from_script_and_language(hb_script_t script, hb_language_t language, unsigned int *script_count, hb_tag_t *script_tags, unsigned int *language_count, hb_tag_t *language_tags)
HB_EXTERN hb_bool_t hb_ot_layout_script_select_language(hb_face_t *face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_count, const hb_tag_t *language_tags, unsigned int *language_index)
HB_EXTERN unsigned int hb_ot_layout_get_attach_points(hb_face_t *face, hb_codepoint_t glyph, unsigned int start_offset, unsigned int *point_count, unsigned int *point_array)
HB_EXTERN hb_bool_t hb_ot_layout_language_get_required_feature(hb_face_t *face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, unsigned int *feature_index, hb_tag_t *feature_tag)
HB_EXTERN void hb_ot_layout_lookup_substitute_closure(hb_face_t *face, unsigned int lookup_index, hb_set_t *glyphs)
HB_EXTERN hb_language_t hb_ot_tag_to_language(hb_tag_t tag)
HB_EXTERN void hb_ot_layout_get_glyphs_in_class(hb_face_t *face, hb_ot_layout_glyph_class_t klass, hb_set_t *glyphs)
HB_EXTERN unsigned int hb_ot_layout_table_get_feature_tags(hb_face_t *face, hb_tag_t table_tag, unsigned int start_offset, unsigned int *feature_count, hb_tag_t *feature_tags)
HB_EXTERN hb_ot_layout_glyph_class_t hb_ot_layout_get_glyph_class(hb_face_t *face, hb_codepoint_t glyph)
HB_EXTERN hb_bool_t hb_ot_layout_table_select_script(hb_face_t *face, hb_tag_t table_tag, unsigned int script_count, const hb_tag_t *script_tags, unsigned int *script_index, hb_tag_t *chosen_script)
hb_ot_layout_glyph_class_t
@ HB_OT_LAYOUT_GLYPH_CLASS_UNCLASSIFIED
@ HB_OT_LAYOUT_GLYPH_CLASS_BASE_GLYPH
@ HB_OT_LAYOUT_GLYPH_CLASS_MARK
@ HB_OT_LAYOUT_GLYPH_CLASS_COMPONENT
@ HB_OT_LAYOUT_GLYPH_CLASS_LIGATURE
HB_EXTERN hb_bool_t hb_ot_layout_lookup_would_substitute(hb_face_t *face, unsigned int lookup_index, const hb_codepoint_t *glyphs, unsigned int glyphs_length, hb_bool_t zero_context)
HB_EXTERN unsigned int hb_ot_layout_script_get_language_tags(hb_face_t *face, hb_tag_t table_tag, unsigned int script_index, unsigned int start_offset, unsigned int *language_count, hb_tag_t *language_tags)
HB_EXTERN void hb_ot_layout_collect_lookups(hb_face_t *face, hb_tag_t table_tag, const hb_tag_t *scripts, const hb_tag_t *languages, const hb_tag_t *features, hb_set_t *lookup_indexes)
hb_ot_layout_baseline_tag_t
@ HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_BOTTOM_OR_LEFT
@ HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_CENTRAL
@ HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_TOP_OR_RIGHT
@ _HB_OT_LAYOUT_BASELINE_TAG_MAX_VALUE
@ HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_TOP_OR_RIGHT
@ HB_OT_LAYOUT_BASELINE_TAG_ROMAN
@ HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_CENTRAL
@ HB_OT_LAYOUT_BASELINE_TAG_MATH
@ HB_OT_LAYOUT_BASELINE_TAG_HANGING
@ HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_BOTTOM_OR_LEFT
HB_EXTERN hb_bool_t hb_ot_layout_language_find_feature(hb_face_t *face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, hb_tag_t feature_tag, unsigned int *feature_index)
HB_EXTERN unsigned int hb_ot_layout_language_get_feature_indexes(hb_face_t *face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, unsigned int start_offset, unsigned int *feature_count, unsigned int *feature_indexes)
HB_EXTERN hb_bool_t hb_ot_layout_table_find_script(hb_face_t *face, hb_tag_t table_tag, hb_tag_t script_tag, unsigned int *script_index)
HB_EXTERN hb_bool_t hb_ot_layout_has_glyph_classes(hb_face_t *face)
HB_EXTERN void hb_ot_layout_lookup_collect_glyphs(hb_face_t *face, hb_tag_t table_tag, unsigned int lookup_index, hb_set_t *glyphs_before, hb_set_t *glyphs_input, hb_set_t *glyphs_after, hb_set_t *glyphs_output)
HB_EXTERN hb_bool_t hb_ot_layout_has_positioning(hb_face_t *face)
HB_EXTERN hb_bool_t hb_ot_layout_table_find_feature_variations(hb_face_t *face, hb_tag_t table_tag, const int *coords, unsigned int num_coords, unsigned int *variations_index)
HB_EXTERN unsigned int hb_ot_layout_language_get_feature_tags(hb_face_t *face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, unsigned int start_offset, unsigned int *feature_count, hb_tag_t *feature_tags)
HB_EXTERN unsigned int hb_ot_layout_table_get_lookup_count(hb_face_t *face, hb_tag_t table_tag)
HB_EXTERN hb_bool_t hb_ot_layout_feature_get_name_ids(hb_face_t *face, hb_tag_t table_tag, unsigned int feature_index, hb_ot_name_id_t *label_id, hb_ot_name_id_t *tooltip_id, hb_ot_name_id_t *sample_id, unsigned int *num_named_parameters, hb_ot_name_id_t *first_param_id)
HB_EXTERN unsigned int hb_ot_layout_table_get_script_tags(hb_face_t *face, hb_tag_t table_tag, unsigned int start_offset, unsigned int *script_count, hb_tag_t *script_tags)
HB_EXTERN unsigned int hb_ot_layout_get_ligature_carets(hb_font_t *font, hb_direction_t direction, hb_codepoint_t glyph, unsigned int start_offset, unsigned int *caret_count, hb_position_t *caret_array)
HB_EXTERN hb_script_t hb_ot_tag_to_script(hb_tag_t tag)
HB_EXTERN unsigned int hb_ot_layout_feature_get_characters(hb_face_t *face, hb_tag_t table_tag, unsigned int feature_index, unsigned int start_offset, unsigned int *char_count, hb_codepoint_t *characters)
HB_EXTERN unsigned int hb_ot_layout_feature_with_variations_get_lookups(hb_face_t *face, hb_tag_t table_tag, unsigned int feature_index, unsigned int variations_index, unsigned int start_offset, unsigned int *lookup_count, unsigned int *lookup_indexes)
HB_EXTERN hb_bool_t hb_ot_layout_get_baseline(hb_font_t *font, hb_ot_layout_baseline_tag_t baseline_tag, hb_direction_t direction, hb_tag_t script_tag, hb_tag_t language_tag, hb_position_t *coord)
HB_EXTERN hb_ot_layout_baseline_tag_t hb_ot_layout_get_horizontal_baseline_tag_for_script(hb_script_t script)
HB_EXTERN void hb_ot_layout_get_baseline_with_fallback(hb_font_t *font, hb_ot_layout_baseline_tag_t baseline_tag, hb_direction_t direction, hb_tag_t script_tag, hb_tag_t language_tag, hb_position_t *coord)
HB_EXTERN hb_bool_t hb_ot_layout_get_size_params(hb_face_t *face, unsigned int *design_size, unsigned int *subfamily_id, hb_ot_name_id_t *subfamily_name_id, unsigned int *range_start, unsigned int *range_end)
HB_EXTERN void hb_ot_layout_collect_features(hb_face_t *face, hb_tag_t table_tag, const hb_tag_t *scripts, const hb_tag_t *languages, const hb_tag_t *features, hb_set_t *feature_indexes)
QList< QChar > characters
XmlOutput::xml_output tag(const QString &name)