Mercurial > repos > rliterman > csp2
diff CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/share/gir-1.0/HarfBuzz-0.0.gir @ 68:5028fdace37b
planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author | jpayne |
---|---|
date | Tue, 18 Mar 2025 16:23:26 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/share/gir-1.0/HarfBuzz-0.0.gir Tue Mar 18 16:23:26 2025 -0400 @@ -0,0 +1,16525 @@ +<?xml version="1.0"?> +<!-- This file was automatically generated from C sources - DO NOT EDIT! +To affect the contents of this file, edit the original C definitions, +and/or use gtk-doc annotations. --> +<repository version="1.2" + xmlns="http://www.gtk.org/introspection/core/1.0" + xmlns:c="http://www.gtk.org/introspection/c/1.0" + xmlns:glib="http://www.gtk.org/introspection/glib/1.0"> + <include name="GObject" version="2.0"/> + <package name="harfbuzz-gobject"/> + <c:include name="hb-gobject.h"/> + <namespace name="HarfBuzz" + version="0.0" + shared-library="libharfbuzz-gobject.so.0" + c:identifier-prefixes="hb_" + c:symbol-prefixes="hb,hb_gobject"> + <alias name="bool_t" c:type="hb_bool_t"> + <source-position filename="../src/hb-common.h" line="92"/> + <type name="gint" c:type="int"/> + </alias> + <alias name="codepoint_t" c:type="hb_codepoint_t"> + <source-position filename="../src/hb-common.h" line="94"/> + <type name="guint32" c:type="uint32_t"/> + </alias> + <alias name="color_t" c:type="hb_color_t"> + <doc xml:space="preserve" + filename="../src/hb-common.h" + line="484">Data type for holding color values.</doc> + <source-position filename="../src/hb-common.h" line="491"/> + <type name="guint32" c:type="uint32_t"/> + </alias> + <alias name="font_get_font_h_extents_func_t" + c:type="hb_font_get_font_h_extents_func_t"> + <source-position filename="../src/hb-font.h" line="116"/> + <type name="font_get_font_extents_func_t" + c:type="hb_font_get_font_extents_func_t"/> + </alias> + <alias name="font_get_font_v_extents_func_t" + c:type="hb_font_get_font_v_extents_func_t"> + <source-position filename="../src/hb-font.h" line="117"/> + <type name="font_get_font_extents_func_t" + c:type="hb_font_get_font_extents_func_t"/> + </alias> + <alias name="font_get_glyph_h_advance_func_t" + c:type="hb_font_get_glyph_h_advance_func_t"> + <source-position filename="../src/hb-font.h" line="141"/> + <type name="font_get_glyph_advance_func_t" + c:type="hb_font_get_glyph_advance_func_t"/> + </alias> + <alias name="font_get_glyph_h_advances_func_t" + c:type="hb_font_get_glyph_h_advances_func_t"> + <source-position filename="../src/hb-font.h" line="151"/> + <type name="font_get_glyph_advances_func_t" + c:type="hb_font_get_glyph_advances_func_t"/> + </alias> + <alias name="font_get_glyph_h_kerning_func_t" + c:type="hb_font_get_glyph_h_kerning_func_t"> + <source-position filename="../src/hb-font.h" line="164"/> + <type name="font_get_glyph_kerning_func_t" + c:type="hb_font_get_glyph_kerning_func_t"/> + </alias> + <alias name="font_get_glyph_h_origin_func_t" + c:type="hb_font_get_glyph_h_origin_func_t"> + <source-position filename="../src/hb-font.h" line="158"/> + <type name="font_get_glyph_origin_func_t" + c:type="hb_font_get_glyph_origin_func_t"/> + </alias> + <alias name="font_get_glyph_v_advance_func_t" + c:type="hb_font_get_glyph_v_advance_func_t"> + <source-position filename="../src/hb-font.h" line="142"/> + <type name="font_get_glyph_advance_func_t" + c:type="hb_font_get_glyph_advance_func_t"/> + </alias> + <alias name="font_get_glyph_v_advances_func_t" + c:type="hb_font_get_glyph_v_advances_func_t"> + <source-position filename="../src/hb-font.h" line="152"/> + <type name="font_get_glyph_advances_func_t" + c:type="hb_font_get_glyph_advances_func_t"/> + </alias> + <alias name="font_get_glyph_v_kerning_func_t" + c:type="hb_font_get_glyph_v_kerning_func_t"> + <source-position filename="../src/hb-deprecated.h" line="168"/> + <type name="font_get_glyph_kerning_func_t" + c:type="hb_font_get_glyph_kerning_func_t"/> + </alias> + <alias name="font_get_glyph_v_origin_func_t" + c:type="hb_font_get_glyph_v_origin_func_t"> + <source-position filename="../src/hb-font.h" line="159"/> + <type name="font_get_glyph_origin_func_t" + c:type="hb_font_get_glyph_origin_func_t"/> + </alias> + <alias name="mask_t" c:type="hb_mask_t"> + <source-position filename="../src/hb-common.h" line="96"/> + <type name="guint32" c:type="uint32_t"/> + </alias> + <alias name="ot_name_id_t" c:type="hb_ot_name_id_t"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.h" + line="37">An integral type representing an OpenType 'name' table name identifier. +There are predefined name IDs, as well as name IDs return from other +API. These can be used to fetch name strings from a font face.</doc> + <source-position filename="../src/hb-ot-name.h" line="79"/> + <type name="guint" c:type="unsigned int"/> + </alias> + <alias name="position_t" c:type="hb_position_t"> + <source-position filename="../src/hb-common.h" line="95"/> + <type name="gint32" c:type="int32_t"/> + </alias> + <alias name="tag_t" c:type="hb_tag_t"> + <source-position filename="../src/hb-common.h" line="110"/> + <type name="guint32" c:type="uint32_t"/> + </alias> + <constant name="AAT_LAYOUT_NO_SELECTOR_INDEX" + value="65535" + c:type="HB_AAT_LAYOUT_NO_SELECTOR_INDEX"> + <source-position filename="../src/hb-aat-layout.h" line="449"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="BUFFER_REPLACEMENT_CODEPOINT_DEFAULT" + value="65533" + c:type="HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT" + version="0.9.31"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="335">The default code point for replacing invalid characters in a given encoding. +Set to U+FFFD REPLACEMENT CHARACTER.</doc> + <source-position filename="../src/hb-buffer.h" line="339"/> + <type name="gint" c:type="gint"/> + </constant> + <function-macro name="COLOR" c:identifier="HB_COLOR" introspectable="0"> + <source-position filename="../src/hb-common.h" line="493"/> + <parameters> + <parameter name="b"> + </parameter> + <parameter name="g"> + </parameter> + <parameter name="r"> + </parameter> + <parameter name="a"> + </parameter> + </parameters> + </function-macro> + <function-macro name="DEPRECATED_FOR" + c:identifier="HB_DEPRECATED_FOR" + introspectable="0"> + <source-position filename="../src/hb-common.h" line="81"/> + <parameters> + <parameter name="f"> + </parameter> + </parameters> + </function-macro> + <function-macro name="DIRECTION_IS_BACKWARD" + c:identifier="HB_DIRECTION_IS_BACKWARD" + introspectable="0"> + <source-position filename="../src/hb-common.h" line="156"/> + <parameters> + <parameter name="dir"> + </parameter> + </parameters> + </function-macro> + <function-macro name="DIRECTION_IS_FORWARD" + c:identifier="HB_DIRECTION_IS_FORWARD" + introspectable="0"> + <source-position filename="../src/hb-common.h" line="155"/> + <parameters> + <parameter name="dir"> + </parameter> + </parameters> + </function-macro> + <function-macro name="DIRECTION_IS_HORIZONTAL" + c:identifier="HB_DIRECTION_IS_HORIZONTAL" + introspectable="0"> + <source-position filename="../src/hb-common.h" line="153"/> + <parameters> + <parameter name="dir"> + </parameter> + </parameters> + </function-macro> + <function-macro name="DIRECTION_IS_VALID" + c:identifier="HB_DIRECTION_IS_VALID" + introspectable="0"> + <source-position filename="../src/hb-common.h" line="151"/> + <parameters> + <parameter name="dir"> + </parameter> + </parameters> + </function-macro> + <function-macro name="DIRECTION_IS_VERTICAL" + c:identifier="HB_DIRECTION_IS_VERTICAL" + introspectable="0"> + <source-position filename="../src/hb-common.h" line="154"/> + <parameters> + <parameter name="dir"> + </parameter> + </parameters> + </function-macro> + <function-macro name="DIRECTION_REVERSE" + c:identifier="HB_DIRECTION_REVERSE" + introspectable="0"> + <source-position filename="../src/hb-common.h" line="157"/> + <parameters> + <parameter name="dir"> + </parameter> + </parameters> + </function-macro> + <constant name="FEATURE_GLOBAL_START" + value="0" + c:type="HB_FEATURE_GLOBAL_START" + version="2.0.0"> + <source-position filename="../src/hb-common.h" line="428"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="LANGUAGE_INVALID" value="0" c:type="HB_LANGUAGE_INVALID"> + <source-position filename="../src/hb-common.h" line="170"/> + <type name="language_t" c:type="hb_language_t"/> + </constant> + <constant name="MAP_VALUE_INVALID" + value="4294967295" + c:type="HB_MAP_VALUE_INVALID"> + <source-position filename="../src/hb-map.h" line="42"/> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </constant> + <constant name="OT_LAYOUT_DEFAULT_LANGUAGE_INDEX" + value="65535" + c:type="HB_OT_LAYOUT_DEFAULT_LANGUAGE_INDEX"> + <source-position filename="../src/hb-ot-layout.h" line="149"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="OT_LAYOUT_NO_FEATURE_INDEX" + value="65535" + c:type="HB_OT_LAYOUT_NO_FEATURE_INDEX"> + <source-position filename="../src/hb-ot-layout.h" line="148"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="OT_LAYOUT_NO_SCRIPT_INDEX" + value="65535" + c:type="HB_OT_LAYOUT_NO_SCRIPT_INDEX"> + <source-position filename="../src/hb-ot-layout.h" line="147"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="OT_LAYOUT_NO_VARIATIONS_INDEX" + value="4294967295" + c:type="HB_OT_LAYOUT_NO_VARIATIONS_INDEX"> + <source-position filename="../src/hb-ot-layout.h" line="150"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="OT_MAX_TAGS_PER_LANGUAGE" + value="3" + c:type="HB_OT_MAX_TAGS_PER_LANGUAGE" + version="2.0.0"> + <source-position filename="../src/hb-ot-layout.h" line="66"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="OT_MAX_TAGS_PER_SCRIPT" + value="3" + c:type="HB_OT_MAX_TAGS_PER_SCRIPT" + version="2.0.0"> + <source-position filename="../src/hb-ot-layout.h" line="60"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="OT_VAR_NO_AXIS_INDEX" + value="4294967295" + c:type="HB_OT_VAR_NO_AXIS_INDEX" + version="1.4.2" + deprecated="1" + deprecated-version="2.2.0"> + <source-position filename="../src/hb-ot-deprecated.h" line="77"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="SET_VALUE_INVALID" + value="4294967295" + c:type="HB_SET_VALUE_INVALID"> + <source-position filename="../src/hb-set.h" line="42"/> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </constant> + <function-macro name="TAG" c:identifier="HB_TAG" introspectable="0"> + <source-position filename="../src/hb-common.h" line="112"/> + <parameters> + <parameter name="c1"> + </parameter> + <parameter name="c2"> + </parameter> + <parameter name="c3"> + </parameter> + <parameter name="c4"> + </parameter> + </parameters> + </function-macro> + <constant name="UNICODE_MAX" + value="1114111" + c:type="HB_UNICODE_MAX" + version="1.9.0"> + <source-position filename="../src/hb-unicode.h" line="48"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="UNICODE_MAX_DECOMPOSITION_LEN" + value="19" + c:type="HB_UNICODE_MAX_DECOMPOSITION_LEN" + deprecated="1" + deprecated-version="2.0.0"> + <doc xml:space="preserve" + filename="../src/hb-deprecated.h" + line="136">See Unicode 6.1 for details on the maximum decomposition length.</doc> + <source-position filename="../src/hb-deprecated.h" line="143"/> + <type name="gint" c:type="gint"/> + </constant> + <function-macro name="UNTAG" c:identifier="HB_UNTAG" introspectable="0"> + <source-position filename="../src/hb-common.h" line="113"/> + <parameters> + <parameter name="tag"> + </parameter> + </parameters> + </function-macro> + <function-macro name="VERSION_ATLEAST" + c:identifier="HB_VERSION_ATLEAST" + introspectable="0"> + <source-position filename="../src/hb-version.h" line="45"/> + <parameters> + <parameter name="major"> + </parameter> + <parameter name="minor"> + </parameter> + <parameter name="micro"> + </parameter> + </parameters> + </function-macro> + <constant name="VERSION_MAJOR" value="2" c:type="HB_VERSION_MAJOR"> + <source-position filename="../src/hb-version.h" line="39"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="VERSION_MICRO" value="2" c:type="HB_VERSION_MICRO"> + <source-position filename="../src/hb-version.h" line="41"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="VERSION_MINOR" value="7" c:type="HB_VERSION_MINOR"> + <source-position filename="../src/hb-version.h" line="40"/> + <type name="gint" c:type="gint"/> + </constant> + <constant name="VERSION_STRING" value="2.7.2" c:type="HB_VERSION_STRING"> + <source-position filename="../src/hb-version.h" line="43"/> + <type name="utf8" c:type="gchar*"/> + </constant> + <enumeration name="aat_layout_feature_selector_t" + version="2.2.0" + glib:type-name="hb_aat_layout_feature_selector_t" + glib:get-type="hb_gobject_aat_layout_feature_selector_get_type" + c:type="hb_aat_layout_feature_selector_t"> + <member name="invalid" + value="65535" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INVALID" + glib:nick="invalid"> + </member> + <member name="all_type_features_on" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_TYPE_FEATURES_ON" + glib:nick="all-type-features-on"> + </member> + <member name="all_type_features_off" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_TYPE_FEATURES_OFF" + glib:nick="all-type-features-off"> + </member> + <member name="required_ligatures_on" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_REQUIRED_LIGATURES_ON" + glib:nick="required-ligatures-on"> + </member> + <member name="required_ligatures_off" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_REQUIRED_LIGATURES_OFF" + glib:nick="required-ligatures-off"> + </member> + <member name="common_ligatures_on" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_COMMON_LIGATURES_ON" + glib:nick="common-ligatures-on"> + </member> + <member name="common_ligatures_off" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_COMMON_LIGATURES_OFF" + glib:nick="common-ligatures-off"> + </member> + <member name="rare_ligatures_on" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_RARE_LIGATURES_ON" + glib:nick="rare-ligatures-on"> + </member> + <member name="rare_ligatures_off" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_RARE_LIGATURES_OFF" + glib:nick="rare-ligatures-off"> + </member> + <member name="logos_on" + value="6" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LOGOS_ON" + glib:nick="logos-on"> + </member> + <member name="logos_off" + value="7" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LOGOS_OFF" + glib:nick="logos-off"> + </member> + <member name="rebus_pictures_on" + value="8" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_REBUS_PICTURES_ON" + glib:nick="rebus-pictures-on"> + </member> + <member name="rebus_pictures_off" + value="9" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_REBUS_PICTURES_OFF" + glib:nick="rebus-pictures-off"> + </member> + <member name="diphthong_ligatures_on" + value="10" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DIPHTHONG_LIGATURES_ON" + glib:nick="diphthong-ligatures-on"> + </member> + <member name="diphthong_ligatures_off" + value="11" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DIPHTHONG_LIGATURES_OFF" + glib:nick="diphthong-ligatures-off"> + </member> + <member name="squared_ligatures_on" + value="12" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SQUARED_LIGATURES_ON" + glib:nick="squared-ligatures-on"> + </member> + <member name="squared_ligatures_off" + value="13" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SQUARED_LIGATURES_OFF" + glib:nick="squared-ligatures-off"> + </member> + <member name="abbrev_squared_ligatures_on" + value="14" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ABBREV_SQUARED_LIGATURES_ON" + glib:nick="abbrev-squared-ligatures-on"> + </member> + <member name="abbrev_squared_ligatures_off" + value="15" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ABBREV_SQUARED_LIGATURES_OFF" + glib:nick="abbrev-squared-ligatures-off"> + </member> + <member name="symbol_ligatures_on" + value="16" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SYMBOL_LIGATURES_ON" + glib:nick="symbol-ligatures-on"> + </member> + <member name="symbol_ligatures_off" + value="17" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SYMBOL_LIGATURES_OFF" + glib:nick="symbol-ligatures-off"> + </member> + <member name="contextual_ligatures_on" + value="18" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_LIGATURES_ON" + glib:nick="contextual-ligatures-on"> + </member> + <member name="contextual_ligatures_off" + value="19" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_LIGATURES_OFF" + glib:nick="contextual-ligatures-off"> + </member> + <member name="historical_ligatures_on" + value="20" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HISTORICAL_LIGATURES_ON" + glib:nick="historical-ligatures-on"> + </member> + <member name="historical_ligatures_off" + value="21" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HISTORICAL_LIGATURES_OFF" + glib:nick="historical-ligatures-off"> + </member> + <member name="unconnected" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_UNCONNECTED" + glib:nick="unconnected"> + </member> + <member name="partially_connected" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PARTIALLY_CONNECTED" + glib:nick="partially-connected"> + </member> + <member name="cursive" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CURSIVE" + glib:nick="cursive"> + </member> + <member name="upper_and_lower_case" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_AND_LOWER_CASE" + glib:nick="upper-and-lower-case"> + </member> + <member name="all_caps" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_CAPS" + glib:nick="all-caps"> + </member> + <member name="all_lower_case" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_LOWER_CASE" + glib:nick="all-lower-case"> + </member> + <member name="small_caps" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SMALL_CAPS" + glib:nick="small-caps"> + </member> + <member name="initial_caps" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INITIAL_CAPS" + glib:nick="initial-caps"> + </member> + <member name="initial_caps_and_small_caps" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INITIAL_CAPS_AND_SMALL_CAPS" + glib:nick="initial-caps-and-small-caps"> + </member> + <member name="substitute_vertical_forms_on" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SUBSTITUTE_VERTICAL_FORMS_ON" + glib:nick="substitute-vertical-forms-on"> + </member> + <member name="substitute_vertical_forms_off" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SUBSTITUTE_VERTICAL_FORMS_OFF" + glib:nick="substitute-vertical-forms-off"> + </member> + <member name="linguistic_rearrangement_on" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LINGUISTIC_REARRANGEMENT_ON" + glib:nick="linguistic-rearrangement-on"> + </member> + <member name="linguistic_rearrangement_off" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LINGUISTIC_REARRANGEMENT_OFF" + glib:nick="linguistic-rearrangement-off"> + </member> + <member name="monospaced_numbers" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_MONOSPACED_NUMBERS" + glib:nick="monospaced-numbers"> + </member> + <member name="proportional_numbers" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_NUMBERS" + glib:nick="proportional-numbers"> + </member> + <member name="third_width_numbers" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_THIRD_WIDTH_NUMBERS" + glib:nick="third-width-numbers"> + </member> + <member name="quarter_width_numbers" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_QUARTER_WIDTH_NUMBERS" + glib:nick="quarter-width-numbers"> + </member> + <member name="word_initial_swashes_on" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_INITIAL_SWASHES_ON" + glib:nick="word-initial-swashes-on"> + </member> + <member name="word_initial_swashes_off" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_INITIAL_SWASHES_OFF" + glib:nick="word-initial-swashes-off"> + </member> + <member name="word_final_swashes_on" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_FINAL_SWASHES_ON" + glib:nick="word-final-swashes-on"> + </member> + <member name="word_final_swashes_off" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_FINAL_SWASHES_OFF" + glib:nick="word-final-swashes-off"> + </member> + <member name="line_initial_swashes_on" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_INITIAL_SWASHES_ON" + glib:nick="line-initial-swashes-on"> + </member> + <member name="line_initial_swashes_off" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_INITIAL_SWASHES_OFF" + glib:nick="line-initial-swashes-off"> + </member> + <member name="line_final_swashes_on" + value="6" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_FINAL_SWASHES_ON" + glib:nick="line-final-swashes-on"> + </member> + <member name="line_final_swashes_off" + value="7" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_FINAL_SWASHES_OFF" + glib:nick="line-final-swashes-off"> + </member> + <member name="non_final_swashes_on" + value="8" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NON_FINAL_SWASHES_ON" + glib:nick="non-final-swashes-on"> + </member> + <member name="non_final_swashes_off" + value="9" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NON_FINAL_SWASHES_OFF" + glib:nick="non-final-swashes-off"> + </member> + <member name="show_diacritics" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SHOW_DIACRITICS" + glib:nick="show-diacritics"> + </member> + <member name="hide_diacritics" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HIDE_DIACRITICS" + glib:nick="hide-diacritics"> + </member> + <member name="decompose_diacritics" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DECOMPOSE_DIACRITICS" + glib:nick="decompose-diacritics"> + </member> + <member name="normal_position" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NORMAL_POSITION" + glib:nick="normal-position"> + </member> + <member name="superiors" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SUPERIORS" + glib:nick="superiors"> + </member> + <member name="inferiors" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INFERIORS" + glib:nick="inferiors"> + </member> + <member name="ordinals" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ORDINALS" + glib:nick="ordinals"> + </member> + <member name="scientific_inferiors" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SCIENTIFIC_INFERIORS" + glib:nick="scientific-inferiors"> + </member> + <member name="no_fractions" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_FRACTIONS" + glib:nick="no-fractions"> + </member> + <member name="vertical_fractions" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_VERTICAL_FRACTIONS" + glib:nick="vertical-fractions"> + </member> + <member name="diagonal_fractions" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DIAGONAL_FRACTIONS" + glib:nick="diagonal-fractions"> + </member> + <member name="prevent_overlap_on" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PREVENT_OVERLAP_ON" + glib:nick="prevent-overlap-on"> + </member> + <member name="prevent_overlap_off" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PREVENT_OVERLAP_OFF" + glib:nick="prevent-overlap-off"> + </member> + <member name="hyphens_to_em_dash_on" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHENS_TO_EM_DASH_ON" + glib:nick="hyphens-to-em-dash-on"> + </member> + <member name="hyphens_to_em_dash_off" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHENS_TO_EM_DASH_OFF" + glib:nick="hyphens-to-em-dash-off"> + </member> + <member name="hyphen_to_en_dash_on" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_EN_DASH_ON" + glib:nick="hyphen-to-en-dash-on"> + </member> + <member name="hyphen_to_en_dash_off" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_EN_DASH_OFF" + glib:nick="hyphen-to-en-dash-off"> + </member> + <member name="slashed_zero_on" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SLASHED_ZERO_ON" + glib:nick="slashed-zero-on"> + </member> + <member name="slashed_zero_off" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SLASHED_ZERO_OFF" + glib:nick="slashed-zero-off"> + </member> + <member name="form_interrobang_on" + value="6" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_FORM_INTERROBANG_ON" + glib:nick="form-interrobang-on"> + </member> + <member name="form_interrobang_off" + value="7" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_FORM_INTERROBANG_OFF" + glib:nick="form-interrobang-off"> + </member> + <member name="smart_quotes_on" + value="8" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SMART_QUOTES_ON" + glib:nick="smart-quotes-on"> + </member> + <member name="smart_quotes_off" + value="9" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SMART_QUOTES_OFF" + glib:nick="smart-quotes-off"> + </member> + <member name="periods_to_ellipsis_on" + value="10" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PERIODS_TO_ELLIPSIS_ON" + glib:nick="periods-to-ellipsis-on"> + </member> + <member name="periods_to_ellipsis_off" + value="11" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PERIODS_TO_ELLIPSIS_OFF" + glib:nick="periods-to-ellipsis-off"> + </member> + <member name="hyphen_to_minus_on" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_MINUS_ON" + glib:nick="hyphen-to-minus-on"> + </member> + <member name="hyphen_to_minus_off" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_MINUS_OFF" + glib:nick="hyphen-to-minus-off"> + </member> + <member name="asterisk_to_multiply_on" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ASTERISK_TO_MULTIPLY_ON" + glib:nick="asterisk-to-multiply-on"> + </member> + <member name="asterisk_to_multiply_off" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ASTERISK_TO_MULTIPLY_OFF" + glib:nick="asterisk-to-multiply-off"> + </member> + <member name="slash_to_divide_on" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SLASH_TO_DIVIDE_ON" + glib:nick="slash-to-divide-on"> + </member> + <member name="slash_to_divide_off" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SLASH_TO_DIVIDE_OFF" + glib:nick="slash-to-divide-off"> + </member> + <member name="inequality_ligatures_on" + value="6" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INEQUALITY_LIGATURES_ON" + glib:nick="inequality-ligatures-on"> + </member> + <member name="inequality_ligatures_off" + value="7" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INEQUALITY_LIGATURES_OFF" + glib:nick="inequality-ligatures-off"> + </member> + <member name="exponents_on" + value="8" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_EXPONENTS_ON" + glib:nick="exponents-on"> + </member> + <member name="exponents_off" + value="9" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_EXPONENTS_OFF" + glib:nick="exponents-off"> + </member> + <member name="mathematical_greek_on" + value="10" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_MATHEMATICAL_GREEK_ON" + glib:nick="mathematical-greek-on"> + </member> + <member name="mathematical_greek_off" + value="11" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_MATHEMATICAL_GREEK_OFF" + glib:nick="mathematical-greek-off"> + </member> + <member name="no_ornaments" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_ORNAMENTS" + glib:nick="no-ornaments"> + </member> + <member name="dingbats" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DINGBATS" + glib:nick="dingbats"> + </member> + <member name="pi_characters" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PI_CHARACTERS" + glib:nick="pi-characters"> + </member> + <member name="fleurons" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_FLEURONS" + glib:nick="fleurons"> + </member> + <member name="decorative_borders" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DECORATIVE_BORDERS" + glib:nick="decorative-borders"> + </member> + <member name="international_symbols" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INTERNATIONAL_SYMBOLS" + glib:nick="international-symbols"> + </member> + <member name="math_symbols" + value="6" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_MATH_SYMBOLS" + glib:nick="math-symbols"> + </member> + <member name="no_alternates" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_ALTERNATES" + glib:nick="no-alternates"> + </member> + <member name="design_level1" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL1" + glib:nick="design-level1"> + </member> + <member name="design_level2" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL2" + glib:nick="design-level2"> + </member> + <member name="design_level3" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL3" + glib:nick="design-level3"> + </member> + <member name="design_level4" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL4" + glib:nick="design-level4"> + </member> + <member name="design_level5" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL5" + glib:nick="design-level5"> + </member> + <member name="no_style_options" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_STYLE_OPTIONS" + glib:nick="no-style-options"> + </member> + <member name="display_text" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DISPLAY_TEXT" + glib:nick="display-text"> + </member> + <member name="engraved_text" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ENGRAVED_TEXT" + glib:nick="engraved-text"> + </member> + <member name="illuminated_caps" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ILLUMINATED_CAPS" + glib:nick="illuminated-caps"> + </member> + <member name="titling_caps" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TITLING_CAPS" + glib:nick="titling-caps"> + </member> + <member name="tall_caps" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TALL_CAPS" + glib:nick="tall-caps"> + </member> + <member name="traditional_characters" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_CHARACTERS" + glib:nick="traditional-characters"> + </member> + <member name="simplified_characters" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SIMPLIFIED_CHARACTERS" + glib:nick="simplified-characters"> + </member> + <member name="jis1978_characters" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS1978_CHARACTERS" + glib:nick="jis1978-characters"> + </member> + <member name="jis1983_characters" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS1983_CHARACTERS" + glib:nick="jis1983-characters"> + </member> + <member name="jis1990_characters" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS1990_CHARACTERS" + glib:nick="jis1990-characters"> + </member> + <member name="traditional_alt_one" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_ONE" + glib:nick="traditional-alt-one"> + </member> + <member name="traditional_alt_two" + value="6" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_TWO" + glib:nick="traditional-alt-two"> + </member> + <member name="traditional_alt_three" + value="7" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_THREE" + glib:nick="traditional-alt-three"> + </member> + <member name="traditional_alt_four" + value="8" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_FOUR" + glib:nick="traditional-alt-four"> + </member> + <member name="traditional_alt_five" + value="9" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_FIVE" + glib:nick="traditional-alt-five"> + </member> + <member name="expert_characters" + value="10" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_EXPERT_CHARACTERS" + glib:nick="expert-characters"> + </member> + <member name="jis2004_characters" + value="11" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS2004_CHARACTERS" + glib:nick="jis2004-characters"> + </member> + <member name="hojo_characters" + value="12" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HOJO_CHARACTERS" + glib:nick="hojo-characters"> + </member> + <member name="nlccharacters" + value="13" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NLCCHARACTERS" + glib:nick="nlccharacters"> + </member> + <member name="traditional_names_characters" + value="14" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_NAMES_CHARACTERS" + glib:nick="traditional-names-characters"> + </member> + <member name="lower_case_numbers" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LOWER_CASE_NUMBERS" + glib:nick="lower-case-numbers"> + </member> + <member name="upper_case_numbers" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_CASE_NUMBERS" + glib:nick="upper-case-numbers"> + </member> + <member name="proportional_text" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_TEXT" + glib:nick="proportional-text"> + </member> + <member name="monospaced_text" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_MONOSPACED_TEXT" + glib:nick="monospaced-text"> + </member> + <member name="half_width_text" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HALF_WIDTH_TEXT" + glib:nick="half-width-text"> + </member> + <member name="third_width_text" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_THIRD_WIDTH_TEXT" + glib:nick="third-width-text"> + </member> + <member name="quarter_width_text" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_QUARTER_WIDTH_TEXT" + glib:nick="quarter-width-text"> + </member> + <member name="alt_proportional_text" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALT_PROPORTIONAL_TEXT" + glib:nick="alt-proportional-text"> + </member> + <member name="alt_half_width_text" + value="6" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALT_HALF_WIDTH_TEXT" + glib:nick="alt-half-width-text"> + </member> + <member name="no_transliteration" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_TRANSLITERATION" + glib:nick="no-transliteration"> + </member> + <member name="hanja_to_hangul" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL" + glib:nick="hanja-to-hangul"> + </member> + <member name="hiragana_to_katakana" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HIRAGANA_TO_KATAKANA" + glib:nick="hiragana-to-katakana"> + </member> + <member name="katakana_to_hiragana" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_KATAKANA_TO_HIRAGANA" + glib:nick="katakana-to-hiragana"> + </member> + <member name="kana_to_romanization" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_KANA_TO_ROMANIZATION" + glib:nick="kana-to-romanization"> + </member> + <member name="romanization_to_hiragana" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ROMANIZATION_TO_HIRAGANA" + glib:nick="romanization-to-hiragana"> + </member> + <member name="romanization_to_katakana" + value="6" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ROMANIZATION_TO_KATAKANA" + glib:nick="romanization-to-katakana"> + </member> + <member name="hanja_to_hangul_alt_one" + value="7" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL_ALT_ONE" + glib:nick="hanja-to-hangul-alt-one"> + </member> + <member name="hanja_to_hangul_alt_two" + value="8" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL_ALT_TWO" + glib:nick="hanja-to-hangul-alt-two"> + </member> + <member name="hanja_to_hangul_alt_three" + value="9" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL_ALT_THREE" + glib:nick="hanja-to-hangul-alt-three"> + </member> + <member name="no_annotation" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_ANNOTATION" + glib:nick="no-annotation"> + </member> + <member name="box_annotation" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_BOX_ANNOTATION" + glib:nick="box-annotation"> + </member> + <member name="rounded_box_annotation" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ROUNDED_BOX_ANNOTATION" + glib:nick="rounded-box-annotation"> + </member> + <member name="circle_annotation" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CIRCLE_ANNOTATION" + glib:nick="circle-annotation"> + </member> + <member name="inverted_circle_annotation" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INVERTED_CIRCLE_ANNOTATION" + glib:nick="inverted-circle-annotation"> + </member> + <member name="parenthesis_annotation" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PARENTHESIS_ANNOTATION" + glib:nick="parenthesis-annotation"> + </member> + <member name="period_annotation" + value="6" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PERIOD_ANNOTATION" + glib:nick="period-annotation"> + </member> + <member name="roman_numeral_annotation" + value="7" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ROMAN_NUMERAL_ANNOTATION" + glib:nick="roman-numeral-annotation"> + </member> + <member name="diamond_annotation" + value="8" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DIAMOND_ANNOTATION" + glib:nick="diamond-annotation"> + </member> + <member name="inverted_box_annotation" + value="9" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INVERTED_BOX_ANNOTATION" + glib:nick="inverted-box-annotation"> + </member> + <member name="inverted_rounded_box_annotation" + value="10" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INVERTED_ROUNDED_BOX_ANNOTATION" + glib:nick="inverted-rounded-box-annotation"> + </member> + <member name="full_width_kana" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_FULL_WIDTH_KANA" + glib:nick="full-width-kana"> + </member> + <member name="proportional_kana" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_KANA" + glib:nick="proportional-kana"> + </member> + <member name="full_width_ideographs" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_FULL_WIDTH_IDEOGRAPHS" + glib:nick="full-width-ideographs"> + </member> + <member name="proportional_ideographs" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_IDEOGRAPHS" + glib:nick="proportional-ideographs"> + </member> + <member name="half_width_ideographs" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HALF_WIDTH_IDEOGRAPHS" + glib:nick="half-width-ideographs"> + </member> + <member name="canonical_composition_on" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CANONICAL_COMPOSITION_ON" + glib:nick="canonical-composition-on"> + </member> + <member name="canonical_composition_off" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CANONICAL_COMPOSITION_OFF" + glib:nick="canonical-composition-off"> + </member> + <member name="compatibility_composition_on" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_COMPATIBILITY_COMPOSITION_ON" + glib:nick="compatibility-composition-on"> + </member> + <member name="compatibility_composition_off" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_COMPATIBILITY_COMPOSITION_OFF" + glib:nick="compatibility-composition-off"> + </member> + <member name="transcoding_composition_on" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRANSCODING_COMPOSITION_ON" + glib:nick="transcoding-composition-on"> + </member> + <member name="transcoding_composition_off" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRANSCODING_COMPOSITION_OFF" + glib:nick="transcoding-composition-off"> + </member> + <member name="no_ruby_kana" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_RUBY_KANA" + glib:nick="no-ruby-kana"> + </member> + <member name="ruby_kana" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA" + glib:nick="ruby-kana"> + </member> + <member name="ruby_kana_on" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA_ON" + glib:nick="ruby-kana-on"> + </member> + <member name="ruby_kana_off" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA_OFF" + glib:nick="ruby-kana-off"> + </member> + <member name="no_cjk_symbol_alternatives" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_CJK_SYMBOL_ALTERNATIVES" + glib:nick="no-cjk-symbol-alternatives"> + </member> + <member name="cjk_symbol_alt_one" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_ONE" + glib:nick="cjk-symbol-alt-one"> + </member> + <member name="cjk_symbol_alt_two" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_TWO" + glib:nick="cjk-symbol-alt-two"> + </member> + <member name="cjk_symbol_alt_three" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_THREE" + glib:nick="cjk-symbol-alt-three"> + </member> + <member name="cjk_symbol_alt_four" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_FOUR" + glib:nick="cjk-symbol-alt-four"> + </member> + <member name="cjk_symbol_alt_five" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_FIVE" + glib:nick="cjk-symbol-alt-five"> + </member> + <member name="no_ideographic_alternatives" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_IDEOGRAPHIC_ALTERNATIVES" + glib:nick="no-ideographic-alternatives"> + </member> + <member name="ideographic_alt_one" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_ONE" + glib:nick="ideographic-alt-one"> + </member> + <member name="ideographic_alt_two" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_TWO" + glib:nick="ideographic-alt-two"> + </member> + <member name="ideographic_alt_three" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_THREE" + glib:nick="ideographic-alt-three"> + </member> + <member name="ideographic_alt_four" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_FOUR" + glib:nick="ideographic-alt-four"> + </member> + <member name="ideographic_alt_five" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_FIVE" + glib:nick="ideographic-alt-five"> + </member> + <member name="cjk_vertical_roman_centered" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_VERTICAL_ROMAN_CENTERED" + glib:nick="cjk-vertical-roman-centered"> + </member> + <member name="cjk_vertical_roman_hbaseline" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_VERTICAL_ROMAN_HBASELINE" + glib:nick="cjk-vertical-roman-hbaseline"> + </member> + <member name="no_cjk_italic_roman" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_CJK_ITALIC_ROMAN" + glib:nick="no-cjk-italic-roman"> + </member> + <member name="cjk_italic_roman" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN" + glib:nick="cjk-italic-roman"> + </member> + <member name="cjk_italic_roman_on" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN_ON" + glib:nick="cjk-italic-roman-on"> + </member> + <member name="cjk_italic_roman_off" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN_OFF" + glib:nick="cjk-italic-roman-off"> + </member> + <member name="case_sensitive_layout_on" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_LAYOUT_ON" + glib:nick="case-sensitive-layout-on"> + </member> + <member name="case_sensitive_layout_off" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_LAYOUT_OFF" + glib:nick="case-sensitive-layout-off"> + </member> + <member name="case_sensitive_spacing_on" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_SPACING_ON" + glib:nick="case-sensitive-spacing-on"> + </member> + <member name="case_sensitive_spacing_off" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_SPACING_OFF" + glib:nick="case-sensitive-spacing-off"> + </member> + <member name="alternate_horiz_kana_on" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_HORIZ_KANA_ON" + glib:nick="alternate-horiz-kana-on"> + </member> + <member name="alternate_horiz_kana_off" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_HORIZ_KANA_OFF" + glib:nick="alternate-horiz-kana-off"> + </member> + <member name="alternate_vert_kana_on" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_VERT_KANA_ON" + glib:nick="alternate-vert-kana-on"> + </member> + <member name="alternate_vert_kana_off" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_VERT_KANA_OFF" + glib:nick="alternate-vert-kana-off"> + </member> + <member name="no_stylistic_alternates" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_STYLISTIC_ALTERNATES" + glib:nick="no-stylistic-alternates"> + </member> + <member name="stylistic_alt_one_on" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ONE_ON" + glib:nick="stylistic-alt-one-on"> + </member> + <member name="stylistic_alt_one_off" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ONE_OFF" + glib:nick="stylistic-alt-one-off"> + </member> + <member name="stylistic_alt_two_on" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWO_ON" + glib:nick="stylistic-alt-two-on"> + </member> + <member name="stylistic_alt_two_off" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWO_OFF" + glib:nick="stylistic-alt-two-off"> + </member> + <member name="stylistic_alt_three_on" + value="6" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_THREE_ON" + glib:nick="stylistic-alt-three-on"> + </member> + <member name="stylistic_alt_three_off" + value="7" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_THREE_OFF" + glib:nick="stylistic-alt-three-off"> + </member> + <member name="stylistic_alt_four_on" + value="8" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FOUR_ON" + glib:nick="stylistic-alt-four-on"> + </member> + <member name="stylistic_alt_four_off" + value="9" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FOUR_OFF" + glib:nick="stylistic-alt-four-off"> + </member> + <member name="stylistic_alt_five_on" + value="10" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FIVE_ON" + glib:nick="stylistic-alt-five-on"> + </member> + <member name="stylistic_alt_five_off" + value="11" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FIVE_OFF" + glib:nick="stylistic-alt-five-off"> + </member> + <member name="stylistic_alt_six_on" + value="12" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SIX_ON" + glib:nick="stylistic-alt-six-on"> + </member> + <member name="stylistic_alt_six_off" + value="13" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SIX_OFF" + glib:nick="stylistic-alt-six-off"> + </member> + <member name="stylistic_alt_seven_on" + value="14" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SEVEN_ON" + glib:nick="stylistic-alt-seven-on"> + </member> + <member name="stylistic_alt_seven_off" + value="15" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SEVEN_OFF" + glib:nick="stylistic-alt-seven-off"> + </member> + <member name="stylistic_alt_eight_on" + value="16" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_EIGHT_ON" + glib:nick="stylistic-alt-eight-on"> + </member> + <member name="stylistic_alt_eight_off" + value="17" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_EIGHT_OFF" + glib:nick="stylistic-alt-eight-off"> + </member> + <member name="stylistic_alt_nine_on" + value="18" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_NINE_ON" + glib:nick="stylistic-alt-nine-on"> + </member> + <member name="stylistic_alt_nine_off" + value="19" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_NINE_OFF" + glib:nick="stylistic-alt-nine-off"> + </member> + <member name="stylistic_alt_ten_on" + value="20" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TEN_ON" + glib:nick="stylistic-alt-ten-on"> + </member> + <member name="stylistic_alt_ten_off" + value="21" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TEN_OFF" + glib:nick="stylistic-alt-ten-off"> + </member> + <member name="stylistic_alt_eleven_on" + value="22" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ELEVEN_ON" + glib:nick="stylistic-alt-eleven-on"> + </member> + <member name="stylistic_alt_eleven_off" + value="23" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ELEVEN_OFF" + glib:nick="stylistic-alt-eleven-off"> + </member> + <member name="stylistic_alt_twelve_on" + value="24" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWELVE_ON" + glib:nick="stylistic-alt-twelve-on"> + </member> + <member name="stylistic_alt_twelve_off" + value="25" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWELVE_OFF" + glib:nick="stylistic-alt-twelve-off"> + </member> + <member name="stylistic_alt_thirteen_on" + value="26" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_THIRTEEN_ON" + glib:nick="stylistic-alt-thirteen-on"> + </member> + <member name="stylistic_alt_thirteen_off" + value="27" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_THIRTEEN_OFF" + glib:nick="stylistic-alt-thirteen-off"> + </member> + <member name="stylistic_alt_fourteen_on" + value="28" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FOURTEEN_ON" + glib:nick="stylistic-alt-fourteen-on"> + </member> + <member name="stylistic_alt_fourteen_off" + value="29" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FOURTEEN_OFF" + glib:nick="stylistic-alt-fourteen-off"> + </member> + <member name="stylistic_alt_fifteen_on" + value="30" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FIFTEEN_ON" + glib:nick="stylistic-alt-fifteen-on"> + </member> + <member name="stylistic_alt_fifteen_off" + value="31" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FIFTEEN_OFF" + glib:nick="stylistic-alt-fifteen-off"> + </member> + <member name="stylistic_alt_sixteen_on" + value="32" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SIXTEEN_ON" + glib:nick="stylistic-alt-sixteen-on"> + </member> + <member name="stylistic_alt_sixteen_off" + value="33" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SIXTEEN_OFF" + glib:nick="stylistic-alt-sixteen-off"> + </member> + <member name="stylistic_alt_seventeen_on" + value="34" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SEVENTEEN_ON" + glib:nick="stylistic-alt-seventeen-on"> + </member> + <member name="stylistic_alt_seventeen_off" + value="35" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SEVENTEEN_OFF" + glib:nick="stylistic-alt-seventeen-off"> + </member> + <member name="stylistic_alt_eighteen_on" + value="36" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_EIGHTEEN_ON" + glib:nick="stylistic-alt-eighteen-on"> + </member> + <member name="stylistic_alt_eighteen_off" + value="37" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_EIGHTEEN_OFF" + glib:nick="stylistic-alt-eighteen-off"> + </member> + <member name="stylistic_alt_nineteen_on" + value="38" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_NINETEEN_ON" + glib:nick="stylistic-alt-nineteen-on"> + </member> + <member name="stylistic_alt_nineteen_off" + value="39" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_NINETEEN_OFF" + glib:nick="stylistic-alt-nineteen-off"> + </member> + <member name="stylistic_alt_twenty_on" + value="40" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWENTY_ON" + glib:nick="stylistic-alt-twenty-on"> + </member> + <member name="stylistic_alt_twenty_off" + value="41" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWENTY_OFF" + glib:nick="stylistic-alt-twenty-off"> + </member> + <member name="contextual_alternates_on" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_ALTERNATES_ON" + glib:nick="contextual-alternates-on"> + </member> + <member name="contextual_alternates_off" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_ALTERNATES_OFF" + glib:nick="contextual-alternates-off"> + </member> + <member name="swash_alternates_on" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SWASH_ALTERNATES_ON" + glib:nick="swash-alternates-on"> + </member> + <member name="swash_alternates_off" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SWASH_ALTERNATES_OFF" + glib:nick="swash-alternates-off"> + </member> + <member name="contextual_swash_alternates_on" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_SWASH_ALTERNATES_ON" + glib:nick="contextual-swash-alternates-on"> + </member> + <member name="contextual_swash_alternates_off" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_SWASH_ALTERNATES_OFF" + glib:nick="contextual-swash-alternates-off"> + </member> + <member name="default_lower_case" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DEFAULT_LOWER_CASE" + glib:nick="default-lower-case"> + </member> + <member name="lower_case_small_caps" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LOWER_CASE_SMALL_CAPS" + glib:nick="lower-case-small-caps"> + </member> + <member name="lower_case_petite_caps" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LOWER_CASE_PETITE_CAPS" + glib:nick="lower-case-petite-caps"> + </member> + <member name="default_upper_case" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DEFAULT_UPPER_CASE" + glib:nick="default-upper-case"> + </member> + <member name="upper_case_small_caps" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_CASE_SMALL_CAPS" + glib:nick="upper-case-small-caps"> + </member> + <member name="upper_case_petite_caps" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_CASE_PETITE_CAPS" + glib:nick="upper-case-petite-caps"> + </member> + <member name="half_width_cjk_roman" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HALF_WIDTH_CJK_ROMAN" + glib:nick="half-width-cjk-roman"> + </member> + <member name="proportional_cjk_roman" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_CJK_ROMAN" + glib:nick="proportional-cjk-roman"> + </member> + <member name="default_cjk_roman" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DEFAULT_CJK_ROMAN" + glib:nick="default-cjk-roman"> + </member> + <member name="full_width_cjk_roman" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_FULL_WIDTH_CJK_ROMAN" + glib:nick="full-width-cjk-roman"> + </member> + </enumeration> + <enumeration name="aat_layout_feature_type_t" + version="2.2.0" + glib:type-name="hb_aat_layout_feature_type_t" + glib:get-type="hb_gobject_aat_layout_feature_type_get_type" + c:type="hb_aat_layout_feature_type_t"> + <member name="invalid" + value="65535" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_INVALID" + glib:nick="invalid"> + </member> + <member name="all_typographic" + value="0" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_ALL_TYPOGRAPHIC" + glib:nick="all-typographic"> + </member> + <member name="ligatures" + value="1" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_LIGATURES" + glib:nick="ligatures"> + </member> + <member name="curisve_connection" + value="2" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CURISVE_CONNECTION" + glib:nick="curisve-connection"> + </member> + <member name="letter_case" + value="3" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_LETTER_CASE" + glib:nick="letter-case"> + </member> + <member name="vertical_substitution" + value="4" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_VERTICAL_SUBSTITUTION" + glib:nick="vertical-substitution"> + </member> + <member name="linguistic_rearrangement" + value="5" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_LINGUISTIC_REARRANGEMENT" + glib:nick="linguistic-rearrangement"> + </member> + <member name="number_spacing" + value="6" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_NUMBER_SPACING" + glib:nick="number-spacing"> + </member> + <member name="smart_swash_type" + value="8" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_SMART_SWASH_TYPE" + glib:nick="smart-swash-type"> + </member> + <member name="diacritics_type" + value="9" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_DIACRITICS_TYPE" + glib:nick="diacritics-type"> + </member> + <member name="vertical_position" + value="10" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_VERTICAL_POSITION" + glib:nick="vertical-position"> + </member> + <member name="fractions" + value="11" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_FRACTIONS" + glib:nick="fractions"> + </member> + <member name="overlapping_characters_type" + value="13" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_OVERLAPPING_CHARACTERS_TYPE" + glib:nick="overlapping-characters-type"> + </member> + <member name="typographic_extras" + value="14" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_TYPOGRAPHIC_EXTRAS" + glib:nick="typographic-extras"> + </member> + <member name="mathematical_extras" + value="15" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_MATHEMATICAL_EXTRAS" + glib:nick="mathematical-extras"> + </member> + <member name="ornament_sets_type" + value="16" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_ORNAMENT_SETS_TYPE" + glib:nick="ornament-sets-type"> + </member> + <member name="character_alternatives" + value="17" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CHARACTER_ALTERNATIVES" + glib:nick="character-alternatives"> + </member> + <member name="design_complexity_type" + value="18" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_DESIGN_COMPLEXITY_TYPE" + glib:nick="design-complexity-type"> + </member> + <member name="style_options" + value="19" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_STYLE_OPTIONS" + glib:nick="style-options"> + </member> + <member name="character_shape" + value="20" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CHARACTER_SHAPE" + glib:nick="character-shape"> + </member> + <member name="number_case" + value="21" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_NUMBER_CASE" + glib:nick="number-case"> + </member> + <member name="text_spacing" + value="22" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_TEXT_SPACING" + glib:nick="text-spacing"> + </member> + <member name="transliteration" + value="23" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_TRANSLITERATION" + glib:nick="transliteration"> + </member> + <member name="annotation_type" + value="24" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_ANNOTATION_TYPE" + glib:nick="annotation-type"> + </member> + <member name="kana_spacing_type" + value="25" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_KANA_SPACING_TYPE" + glib:nick="kana-spacing-type"> + </member> + <member name="ideographic_spacing_type" + value="26" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_IDEOGRAPHIC_SPACING_TYPE" + glib:nick="ideographic-spacing-type"> + </member> + <member name="unicode_decomposition_type" + value="27" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_UNICODE_DECOMPOSITION_TYPE" + glib:nick="unicode-decomposition-type"> + </member> + <member name="ruby_kana" + value="28" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_RUBY_KANA" + glib:nick="ruby-kana"> + </member> + <member name="cjk_symbol_alternatives_type" + value="29" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CJK_SYMBOL_ALTERNATIVES_TYPE" + glib:nick="cjk-symbol-alternatives-type"> + </member> + <member name="ideographic_alternatives_type" + value="30" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_IDEOGRAPHIC_ALTERNATIVES_TYPE" + glib:nick="ideographic-alternatives-type"> + </member> + <member name="cjk_vertical_roman_placement_type" + value="31" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CJK_VERTICAL_ROMAN_PLACEMENT_TYPE" + glib:nick="cjk-vertical-roman-placement-type"> + </member> + <member name="italic_cjk_roman" + value="32" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_ITALIC_CJK_ROMAN" + glib:nick="italic-cjk-roman"> + </member> + <member name="case_sensitive_layout" + value="33" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CASE_SENSITIVE_LAYOUT" + glib:nick="case-sensitive-layout"> + </member> + <member name="alternate_kana" + value="34" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_ALTERNATE_KANA" + glib:nick="alternate-kana"> + </member> + <member name="stylistic_alternatives" + value="35" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_STYLISTIC_ALTERNATIVES" + glib:nick="stylistic-alternatives"> + </member> + <member name="contextual_alternatives" + value="36" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CONTEXTUAL_ALTERNATIVES" + glib:nick="contextual-alternatives"> + </member> + <member name="lower_case" + value="37" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_LOWER_CASE" + glib:nick="lower-case"> + </member> + <member name="upper_case" + value="38" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_UPPER_CASE" + glib:nick="upper-case"> + </member> + <member name="language_tag_type" + value="39" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_LANGUAGE_TAG_TYPE" + glib:nick="language-tag-type"> + </member> + <member name="cjk_roman_spacing_type" + value="103" + c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CJK_ROMAN_SPACING_TYPE" + glib:nick="cjk-roman-spacing-type"> + </member> + </enumeration> + <function name="blob_copy_writable_or_fail" + c:identifier="hb_blob_copy_writable_or_fail" + version="1.8.0"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="153">Makes a writable copy of @blob.</doc> + <source-position filename="../src/hb-blob.h" line="89"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="159">New blob, or nullptr if allocation failed.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + <parameters> + <parameter name="blob" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="155">A blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + </parameters> + </function> + <function name="blob_create" + c:identifier="hb_blob_create" + version="0.9.2" + introspectable="0"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="55">Creates a new "blob" object wrapping @data. The @mode parameter is used +to negotiate ownership and lifecycle of @data.</doc> + <source-position filename="../src/hb-blob.h" line="68"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="66">New blob, or the empty blob if something failed or if @length is +zero. Destroy with hb_blob_destroy().</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + <parameters> + <parameter name="data" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="57">Pointer to blob data.</doc> + <type name="utf8" c:type="const char*"/> + </parameter> + <parameter name="length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="58">Length of @data in bytes.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="mode" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="59">Memory mode for @data.</doc> + <type name="memory_mode_t" c:type="hb_memory_mode_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="60">Data parameter to pass to @destroy.</doc> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="61">Callback to call when @data is not needed anymore.</doc> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="blob_create_from_file" + c:identifier="hb_blob_create_from_file" + version="1.7.7"> + <source-position filename="../src/hb-blob.h" line="75"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="563">A hb_blob_t pointer with the content of the file</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + <parameters> + <parameter name="file_name" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="561">font filename.</doc> + <type name="utf8" c:type="const char*"/> + </parameter> + </parameters> + </function> + <function name="blob_create_sub_blob" + c:identifier="hb_blob_create_sub_blob" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="112">Returns a blob that represents a range of bytes in @parent. The new +blob is always created with %HB_MEMORY_MODE_READONLY, meaning that it +will never modify data in the parent blob. The parent data is not +expected to be modified, and will result in undefined behavior if it +is. + +Makes @parent immutable.</doc> + <source-position filename="../src/hb-blob.h" line="84"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="126">New blob, or the empty blob if something failed or if +@length is zero or @offset is beyond the end of @parent's data. Destroy +with hb_blob_destroy().</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + <parameters> + <parameter name="parent" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="114">Parent blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + <parameter name="offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="115">Start offset of sub-blob within @parent, in bytes.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="116">Length of sub-blob.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="blob_destroy" + c:identifier="hb_blob_destroy" + version="0.9.2" + introspectable="0"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="213">Decreases the reference count on @blob, and if it reaches zero, destroys +@blob, freeing all memory, possibly calling the destroy-callback the blob +was created for if it has not been called already. + +See TODO:link object types for more information.</doc> + <source-position filename="../src/hb-blob.h" line="98"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="blob" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="215">a blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + </parameters> + </function> + <function name="blob_get_data" + c:identifier="hb_blob_get_data" + version="0.9.2"> + <source-position filename="../src/hb-blob.h" line="124"/> + <return-value transfer-ownership="none"> + <array length="1" zero-terminated="0" c:type="const char*"> + <type name="utf8" c:type="char"/> + </array> + </return-value> + <parameters> + <parameter name="blob" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="328">a blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + <parameter name="length" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="blob_get_data_writable" + c:identifier="hb_blob_get_data_writable" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="346">Tries to make blob data writable (possibly copying it) and +return pointer to data. + +Fails if blob has been made immutable, or if memory allocation +fails.</doc> + <source-position filename="../src/hb-blob.h" line="127"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="357">Writable blob data, +or %NULL if failed.</doc> + <array length="1" zero-terminated="0" c:type="char*"> + <type name="utf8" c:type="char"/> + </array> + </return-value> + <parameters> + <parameter name="blob" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="348">a blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + <parameter name="length" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="349">output length of the writable data.</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="blob_get_empty" + c:identifier="hb_blob_get_empty" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="178">Returns the singleton empty blob. + +See TODO:link object types for more information.</doc> + <source-position filename="../src/hb-blob.h" line="92"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="185">the empty blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + </function> + <function name="blob_get_length" + c:identifier="hb_blob_get_length" + version="0.9.2"> + <source-position filename="../src/hb-blob.h" line="121"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="316">the length of blob data in bytes.</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="blob" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="312">a blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + </parameters> + </function> + <function name="blob_get_user_data" + c:identifier="hb_blob_get_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-blob.h" line="109"/> + <return-value transfer-ownership="none" nullable="1"> + <type name="gpointer" c:type="void*"/> + </return-value> + <parameters> + <parameter name="blob" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="259">a blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="260">key for data to get.</doc> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + </parameters> + </function> + <function name="blob_is_immutable" + c:identifier="hb_blob_is_immutable" + version="0.9.2"> + <source-position filename="../src/hb-blob.h" line="117"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="299">TODO</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="blob" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="295">a blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + </parameters> + </function> + <function name="blob_make_immutable" + c:identifier="hb_blob_make_immutable" + version="0.9.2"> + <source-position filename="../src/hb-blob.h" line="114"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="blob" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="278">a blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + </parameters> + </function> + <function name="blob_reference" + c:identifier="hb_blob_reference" + version="0.9.2" + introspectable="0"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="195">Increases the reference count on @blob. + +See TODO:link object types for more information.</doc> + <source-position filename="../src/hb-blob.h" line="95"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="203">@blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + <parameters> + <parameter name="blob" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="197">a blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + </parameters> + </function> + <function name="blob_set_user_data" + c:identifier="hb_blob_set_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-blob.h" line="101"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="blob" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="237">a blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="238">key for data to set.</doc> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + <parameter name="data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="239">data to set.</doc> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="240">callback to call when @data is not needed anymore.</doc> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + <parameter name="replace" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="241">whether to replace an existing data with the same key.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </parameter> + </parameters> + </function> + <record name="blob_t" + c:type="hb_blob_t" + glib:type-name="hb_blob_t" + glib:get-type="hb_gobject_blob_get_type" + c:symbol-prefix="gobject_blob"> + <source-position filename="../src/hb-blob.h" line="65"/> + </record> + <function name="buffer_add" c:identifier="hb_buffer_add" version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1270">Appends a character with the Unicode value of @codepoint to @buffer, and +gives it the initial cluster value of @cluster. Clusters can be any thing +the client wants, they are usually used to refer to the index of the +character in the input text stream and are output in +#hb_glyph_info_t.cluster field. + +This function does not check the validity of @codepoint, it is up to the +caller to ensure it is a valid Unicode code point.</doc> + <source-position filename="../src/hb-buffer.h" line="388"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1272">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="codepoint" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1273">a Unicode code point.</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="cluster" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1274">the cluster value of @codepoint.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="buffer_add_codepoints" + c:identifier="hb_buffer_add_codepoints" + version="0.9.31"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1680">Appends characters from @text array to @buffer. The @item_offset is the +position of the first character from @text that will be appended, and +@item_length is the number of character. When shaping part of a larger text +(e.g. a run of text from a paragraph), instead of passing just the substring +corresponding to the run, it is preferable to pass the whole +paragraph and specify the run start and length as @item_offset and +@item_length, respectively, to give HarfBuzz the full context to be able, +for example, to do cross-run Arabic shaping or properly handle combining +marks at stat of run. + +This function does not check the validity of @text, it is up to the caller +to ensure it contains a valid Unicode code points.</doc> + <source-position filename="../src/hb-buffer.h" line="421"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1682">a #hb_buffer_t to append characters to.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="text" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1683">an array of Unicode code points to append.</doc> + <array length="2" zero-terminated="0" c:type="const hb_codepoint_t*"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </array> + </parameter> + <parameter name="text_length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1684">the length of the @text, or -1 if it is %NULL terminated.</doc> + <type name="gint" c:type="int"/> + </parameter> + <parameter name="item_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1685">the offset of the first code point to add to the @buffer.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="item_length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1686">the number of code points to add to the @buffer, or -1 for the + end of @text (assuming it is %NULL terminated).</doc> + <type name="gint" c:type="int"/> + </parameter> + </parameters> + </function> + <function name="buffer_add_latin1" + c:identifier="hb_buffer_add_latin1" + version="0.9.39"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1653">Similar to hb_buffer_add_codepoints(), but allows only access to first 256 +Unicode code points that can fit in 8-bit strings. + +<note>Has nothing to do with non-Unicode Latin-1 encoding.</note></doc> + <source-position filename="../src/hb-buffer.h" line="414"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1655">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="text" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1656">an array of UTF-8 + characters to append.</doc> + <array length="2" zero-terminated="0" c:type="const uint8_t*"> + <type name="guint8"/> + </array> + </parameter> + <parameter name="text_length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1658">the length of the @text, or -1 if it is %NULL terminated.</doc> + <type name="gint" c:type="int"/> + </parameter> + <parameter name="item_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1659">the offset of the first character to add to the @buffer.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="item_length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1660">the number of characters to add to the @buffer, or -1 for the + end of @text (assuming it is %NULL terminated).</doc> + <type name="gint" c:type="int"/> + </parameter> + </parameters> + </function> + <function name="buffer_add_utf16" + c:identifier="hb_buffer_add_utf16" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1601">See hb_buffer_add_codepoints(). + +Replaces invalid UTF-16 characters with the @buffer replacement code point, +see hb_buffer_set_replacement_codepoint().</doc> + <source-position filename="../src/hb-buffer.h" line="400"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1603">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="text" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1604">an array of UTF-16 characters to append.</doc> + <array length="2" zero-terminated="0" c:type="const uint16_t*"> + <type name="guint16" c:type="uint16_t"/> + </array> + </parameter> + <parameter name="text_length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1605">the length of the @text, or -1 if it is %NULL terminated.</doc> + <type name="gint" c:type="int"/> + </parameter> + <parameter name="item_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1606">the offset of the first character to add to the @buffer.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="item_length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1607">the number of characters to add to the @buffer, or -1 for the + end of @text (assuming it is %NULL terminated).</doc> + <type name="gint" c:type="int"/> + </parameter> + </parameters> + </function> + <function name="buffer_add_utf32" + c:identifier="hb_buffer_add_utf32" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1627">See hb_buffer_add_codepoints(). + +Replaces invalid UTF-32 characters with the @buffer replacement code point, +see hb_buffer_set_replacement_codepoint().</doc> + <source-position filename="../src/hb-buffer.h" line="407"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1629">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="text" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1630">an array of UTF-32 characters to append.</doc> + <array length="2" zero-terminated="0" c:type="const uint32_t*"> + <type name="guint32" c:type="uint32_t"/> + </array> + </parameter> + <parameter name="text_length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1631">the length of the @text, or -1 if it is %NULL terminated.</doc> + <type name="gint" c:type="int"/> + </parameter> + <parameter name="item_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1632">the offset of the first character to add to the @buffer.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="item_length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1633">the number of characters to add to the @buffer, or -1 for the + end of @text (assuming it is %NULL terminated).</doc> + <type name="gint" c:type="int"/> + </parameter> + </parameters> + </function> + <function name="buffer_add_utf8" + c:identifier="hb_buffer_add_utf8" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1574">See hb_buffer_add_codepoints(). + +Replaces invalid UTF-8 characters with the @buffer replacement code point, +see hb_buffer_set_replacement_codepoint().</doc> + <source-position filename="../src/hb-buffer.h" line="393"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1576">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="text" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1577">an array of UTF-8 + characters to append.</doc> + <array length="2" zero-terminated="0" c:type="const char*"> + <type name="guint8"/> + </array> + </parameter> + <parameter name="text_length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1579">the length of the @text, or -1 if it is %NULL terminated.</doc> + <type name="gint" c:type="int"/> + </parameter> + <parameter name="item_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1580">the offset of the first character to add to the @buffer.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="item_length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1581">the number of characters to add to the @buffer, or -1 for the + end of @text (assuming it is %NULL terminated).</doc> + <type name="gint" c:type="int"/> + </parameter> + </parameters> + </function> + <function name="buffer_allocation_successful" + c:identifier="hb_buffer_allocation_successful" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1253">Check if allocating memory for the buffer succeeded.</doc> + <source-position filename="../src/hb-buffer.h" line="372"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1259">%true if @buffer memory allocation succeeded, %false otherwise.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1255">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_append" + c:identifier="hb_buffer_append" + version="1.5.0"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1715">Append (part of) contents of another buffer to this buffer.</doc> + <source-position filename="../src/hb-buffer.h" line="428"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1717">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="source" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1718">source #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="start" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1719">start index into source buffer to copy. Use 0 to copy from start of buffer.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="end" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1720">end index into source buffer to copy. Use @HB_FEATURE_GLOBAL_END to copy to end of buffer.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="buffer_clear_contents" + c:identifier="hb_buffer_clear_contents" + version="0.9.11"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1220">Similar to hb_buffer_reset(), but does not clear the Unicode functions and +the replacement code point.</doc> + <source-position filename="../src/hb-buffer.h" line="364"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1222">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <enumeration name="buffer_cluster_level_t" + version="0.9.42" + glib:type-name="hb_buffer_cluster_level_t" + glib:get-type="hb_gobject_buffer_cluster_level_get_type" + c:type="hb_buffer_cluster_level_t"> + <member name="monotone_graphemes" + value="0" + c:identifier="HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES" + glib:nick="monotone-graphemes"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="312">Return cluster values grouped by graphemes into + monotone order.</doc> + </member> + <member name="monotone_characters" + value="1" + c:identifier="HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS" + glib:nick="monotone-characters"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="314">Return cluster values grouped into monotone order.</doc> + </member> + <member name="characters" + value="2" + c:identifier="HB_BUFFER_CLUSTER_LEVEL_CHARACTERS" + glib:nick="characters"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="315">Don't group cluster values.</doc> + </member> + <member name="default" + value="0" + c:identifier="HB_BUFFER_CLUSTER_LEVEL_DEFAULT" + glib:nick="default"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="316">Default cluster level, + equal to @HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES.</doc> + </member> + </enumeration> + <enumeration name="buffer_content_type_t" + glib:type-name="hb_buffer_content_type_t" + glib:get-type="hb_gobject_buffer_content_type_get_type" + c:type="hb_buffer_content_type_t"> + <member name="invalid" + value="0" + c:identifier="HB_BUFFER_CONTENT_TYPE_INVALID" + glib:nick="invalid"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="204">Initial value for new buffer.</doc> + </member> + <member name="unicode" + value="1" + c:identifier="HB_BUFFER_CONTENT_TYPE_UNICODE" + glib:nick="unicode"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="205">The buffer contains input characters (before shaping).</doc> + </member> + <member name="glyphs" + value="2" + c:identifier="HB_BUFFER_CONTENT_TYPE_GLYPHS" + glib:nick="glyphs"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="206">The buffer contains output glyphs (after shaping).</doc> + </member> + </enumeration> + <function name="buffer_create" + c:identifier="hb_buffer_create" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="676">Creates a new #hb_buffer_t with all properties to defaults.</doc> + <source-position filename="../src/hb-buffer.h" line="179"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="681"> +A newly allocated #hb_buffer_t with a reference count of 1. The initial +reference count should be released with hb_buffer_destroy() when you are done +using the #hb_buffer_t. This function never returns %NULL. If memory cannot +be allocated, a special #hb_buffer_t object will be returned on which +hb_buffer_allocation_successful() returns %false.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </return-value> + </function> + <function name="buffer_deserialize_glyphs" + c:identifier="hb_buffer_deserialize_glyphs" + version="0.9.7"> + <source-position filename="../src/hb-buffer.h" line="522"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="411">an #hb_buffer_t buffer.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="buf" transfer-ownership="none"> + <array length="2" zero-terminated="0" c:type="const char*"> + <type name="utf8" c:type="char"/> + </array> + </parameter> + <parameter name="buf_len" transfer-ownership="none"> + <type name="gint" c:type="int"/> + </parameter> + <parameter name="end_ptr" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="utf8" c:type="const char**"/> + </parameter> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="format" transfer-ownership="none"> + <type name="buffer_serialize_format_t" + c:type="hb_buffer_serialize_format_t"/> + </parameter> + </parameters> + </function> + <function name="buffer_destroy" + c:identifier="hb_buffer_destroy" + version="0.9.2" + introspectable="0"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="739">Deallocate the @buffer. +Decreases the reference count on @buffer by one. If the result is zero, then +@buffer and all associated resources are freed. See hb_buffer_reference().</doc> + <source-position filename="../src/hb-buffer.h" line="188"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="741">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_diff" c:identifier="hb_buffer_diff" version="1.5.0"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1872">If dottedcircle_glyph is (hb_codepoint_t) -1 then %HB_BUFFER_DIFF_FLAG_DOTTED_CIRCLE_PRESENT +and %HB_BUFFER_DIFF_FLAG_NOTDEF_PRESENT are never returned. This should be used by most +callers if just comparing two buffers is needed.</doc> + <source-position filename="../src/hb-buffer.h" line="563"/> + <return-value transfer-ownership="none"> + <type name="buffer_diff_flags_t" c:type="hb_buffer_diff_flags_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1874">a buffer.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="reference" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1875">other buffer to compare to.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="dottedcircle_glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1876">glyph id of U+25CC DOTTED CIRCLE, or (hb_codepont_t) -1.</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="position_fuzz" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1877">allowed absolute difference in position values.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <bitfield name="buffer_diff_flags_t" + glib:type-name="hb_buffer_diff_flags_t" + glib:get-type="hb_gobject_buffer_diff_flags_get_type" + c:type="hb_buffer_diff_flags_t"> + <member name="equal" + value="0" + c:identifier="HB_BUFFER_DIFF_FLAG_EQUAL" + glib:nick="equal"> + </member> + <member name="content_type_mismatch" + value="1" + c:identifier="HB_BUFFER_DIFF_FLAG_CONTENT_TYPE_MISMATCH" + glib:nick="content-type-mismatch"> + </member> + <member name="length_mismatch" + value="2" + c:identifier="HB_BUFFER_DIFF_FLAG_LENGTH_MISMATCH" + glib:nick="length-mismatch"> + </member> + <member name="notdef_present" + value="4" + c:identifier="HB_BUFFER_DIFF_FLAG_NOTDEF_PRESENT" + glib:nick="notdef-present"> + </member> + <member name="dotted_circle_present" + value="8" + c:identifier="HB_BUFFER_DIFF_FLAG_DOTTED_CIRCLE_PRESENT" + glib:nick="dotted-circle-present"> + </member> + <member name="codepoint_mismatch" + value="16" + c:identifier="HB_BUFFER_DIFF_FLAG_CODEPOINT_MISMATCH" + glib:nick="codepoint-mismatch"> + </member> + <member name="cluster_mismatch" + value="32" + c:identifier="HB_BUFFER_DIFF_FLAG_CLUSTER_MISMATCH" + glib:nick="cluster-mismatch"> + </member> + <member name="glyph_flags_mismatch" + value="64" + c:identifier="HB_BUFFER_DIFF_FLAG_GLYPH_FLAGS_MISMATCH" + glib:nick="glyph-flags-mismatch"> + </member> + <member name="position_mismatch" + value="128" + c:identifier="HB_BUFFER_DIFF_FLAG_POSITION_MISMATCH" + glib:nick="position-mismatch"> + </member> + </bitfield> + <bitfield name="buffer_flags_t" + version="0.9.20" + glib:type-name="hb_buffer_flags_t" + glib:get-type="hb_gobject_buffer_flags_get_type" + c:type="hb_buffer_flags_t"> + <member name="default" + value="0" + c:identifier="HB_BUFFER_FLAG_DEFAULT" + glib:nick="default"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="265">the default buffer flag.</doc> + </member> + <member name="bot" + value="1" + c:identifier="HB_BUFFER_FLAG_BOT" + glib:nick="bot"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="266">flag indicating that special handling of the beginning + of text paragraph can be applied to this buffer. Should usually + be set, unless you are passing to the buffer only part + of the text without the full context.</doc> + </member> + <member name="eot" + value="2" + c:identifier="HB_BUFFER_FLAG_EOT" + glib:nick="eot"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="270">flag indicating that special handling of the end of text + paragraph can be applied to this buffer, similar to + @HB_BUFFER_FLAG_BOT.</doc> + </member> + <member name="preserve_default_ignorables" + value="4" + c:identifier="HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES" + glib:nick="preserve-default-ignorables"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="273">flag indication that character with Default_Ignorable + Unicode property should use the corresponding glyph + from the font, instead of hiding them (done by + replacing them with the space glyph and zeroing the + advance width.) This flag takes precedence over + @HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES.</doc> + </member> + <member name="remove_default_ignorables" + value="8" + c:identifier="HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES" + glib:nick="remove-default-ignorables"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="280">flag indication that character with Default_Ignorable + Unicode property should be removed from glyph string + instead of hiding them (done by replacing them with the + space glyph and zeroing the advance width.) + @HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES takes + precedence over this flag. Since: 1.8.0</doc> + </member> + <member name="do_not_insert_dotted_circle" + value="16" + c:identifier="HB_BUFFER_FLAG_DO_NOT_INSERT_DOTTED_CIRCLE" + glib:nick="do-not-insert-dotted-circle"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="287">flag indicating that a dotted circle should + not be inserted in the rendering of incorrect + character sequences (such at <0905 093E>). Since: 2.4</doc> + </member> + </bitfield> + <function name="buffer_get_cluster_level" + c:identifier="hb_buffer_get_cluster_level" + version="0.9.42"> + <source-position filename="../src/hb-buffer.h" line="333"/> + <return-value transfer-ownership="none"> + <type name="buffer_cluster_level_t" + c:type="hb_buffer_cluster_level_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1110">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_content_type" + c:identifier="hb_buffer_get_content_type" + version="0.9.5"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="826">see hb_buffer_set_content_type().</doc> + <source-position filename="../src/hb-buffer.h" line="219"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="832">The type of @buffer contents.</doc> + <type name="buffer_content_type_t" c:type="hb_buffer_content_type_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="828">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_direction" + c:identifier="hb_buffer_get_direction" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="910">See hb_buffer_set_direction()</doc> + <source-position filename="../src/hb-buffer.h" line="234"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="916">The direction of the @buffer.</doc> + <type name="direction_t" c:type="hb_direction_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="912">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_empty" + c:identifier="hb_buffer_get_empty" + version="0.9.2"> + <source-position filename="../src/hb-buffer.h" line="182"/> + <return-value transfer-ownership="full"> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </return-value> + </function> + <function name="buffer_get_flags" + c:identifier="hb_buffer_get_flags" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1072">See hb_buffer_set_flags().</doc> + <source-position filename="../src/hb-buffer.h" line="308"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1078">The @buffer flags.</doc> + <type name="buffer_flags_t" c:type="hb_buffer_flags_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1074">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_glyph_infos" + c:identifier="hb_buffer_get_glyph_infos" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1356">Returns @buffer glyph information array. Returned pointer +is valid as long as @buffer contents are not modified.</doc> + <source-position filename="../src/hb-buffer.h" line="443"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1364"> +The @buffer glyph information array. +The value valid as long as buffer has not been modified.</doc> + <array length="1" zero-terminated="0" c:type="hb_glyph_info_t*"> + <type name="glyph_info_t" c:type="hb_glyph_info_t"/> + </array> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1358">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="length" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1359">output array length.</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_glyph_positions" + c:identifier="hb_buffer_get_glyph_positions" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1380">Returns @buffer glyph position array. Returned pointer +is valid as long as @buffer contents are not modified.</doc> + <source-position filename="../src/hb-buffer.h" line="447"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1388"> +The @buffer glyph position array. +The value valid as long as buffer has not been modified.</doc> + <array length="1" zero-terminated="0" c:type="hb_glyph_position_t*"> + <type name="glyph_position_t" c:type="hb_glyph_position_t"/> + </array> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1382">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="length" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1383">output length.</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_invisible_glyph" + c:identifier="hb_buffer_get_invisible_glyph" + version="2.0.0"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1187">See hb_buffer_set_invisible_glyph().</doc> + <source-position filename="../src/hb-buffer.h" line="357"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1193">The @buffer invisible #hb_codepoint_t.</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1189">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_language" + c:identifier="hb_buffer_get_language" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="998">See hb_buffer_set_language().</doc> + <source-position filename="../src/hb-buffer.h" line="249"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1004"> +The #hb_language_t of the buffer. Must not be freed by the caller.</doc> + <type name="language_t" c:type="hb_language_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1000">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_length" + c:identifier="hb_buffer_get_length" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1338">Returns the number of items in the buffer.</doc> + <source-position filename="../src/hb-buffer.h" line="438"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1344">The @buffer length. +The value valid as long as buffer has not been modified.</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1340">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_replacement_codepoint" + c:identifier="hb_buffer_get_replacement_codepoint" + version="0.9.31"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1147">See hb_buffer_set_replacement_codepoint().</doc> + <source-position filename="../src/hb-buffer.h" line="350"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1153">The @buffer replacement #hb_codepoint_t.</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1149">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_script" + c:identifier="hb_buffer_get_script" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="954">See hb_buffer_set_script().</doc> + <source-position filename="../src/hb-buffer.h" line="241"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="960">The #hb_script_t of the @buffer.</doc> + <type name="script_t" c:type="hb_script_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="956">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_segment_properties" + c:identifier="hb_buffer_get_segment_properties" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1036">Sets @props to the #hb_segment_properties_t of @buffer.</doc> + <source-position filename="../src/hb-buffer.h" line="256"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1038">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="props" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1039">the output #hb_segment_properties_t.</doc> + <type name="segment_properties_t" c:type="hb_segment_properties_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_unicode_funcs" + c:identifier="hb_buffer_get_unicode_funcs" + version="0.9.2"> + <source-position filename="../src/hb-buffer.h" line="227"/> + <return-value transfer-ownership="full"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="870">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_get_user_data" + c:identifier="hb_buffer_get_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-buffer.h" line="198"/> + <return-value transfer-ownership="none" nullable="1"> + <type name="gpointer" c:type="void*"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="792">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_guess_segment_properties" + c:identifier="hb_buffer_guess_segment_properties" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1471">Sets unset buffer segment properties based on buffer Unicode +contents. If buffer is not empty, it must have content type +%HB_BUFFER_CONTENT_TYPE_UNICODE. + +If buffer script is not set (ie. is %HB_SCRIPT_INVALID), it +will be set to the Unicode script of the first character in +the buffer that has a script other than %HB_SCRIPT_COMMON, +%HB_SCRIPT_INHERITED, and %HB_SCRIPT_UNKNOWN. + +Next, if buffer direction is not set (ie. is %HB_DIRECTION_INVALID), +it will be set to the natural horizontal direction of the +buffer script as returned by hb_script_get_horizontal_direction(). +If hb_script_get_horizontal_direction() returns %HB_DIRECTION_INVALID, +then %HB_DIRECTION_LTR is used. + +Finally, if buffer language is not set (ie. is %HB_LANGUAGE_INVALID), +it will be set to the process's default language as returned by +hb_language_get_default(). This may change in the future by +taking buffer script into consideration when choosing a language. +Note that hb_language_get_default() is NOT threadsafe the first time +it is called. See documentation for that function for details.</doc> + <source-position filename="../src/hb-buffer.h" line="260"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1473">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <callback name="buffer_message_func_t" c:type="hb_buffer_message_func_t"> + <source-position filename="../src/hb-buffer.h" line="573"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="message" transfer-ownership="none"> + <type name="utf8" c:type="const char*"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="3"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="buffer_normalize_glyphs" + c:identifier="hb_buffer_normalize_glyphs" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1822">Reorders a glyph buffer to have canonical in-cluster glyph order / position. +The resulting clusters should behave identical to pre-reordering clusters. + +<note>This has nothing to do with Unicode normalization.</note></doc> + <source-position filename="../src/hb-buffer.h" line="452"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1824">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_pre_allocate" + c:identifier="hb_buffer_pre_allocate" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1235">Pre allocates memory for @buffer to fit at least @size number of items.</doc> + <source-position filename="../src/hb-buffer.h" line="367"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1242">%true if @buffer memory allocation succeeded, %false otherwise.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1237">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="size" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1238">number of items to pre allocate.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="buffer_reference" + c:identifier="hb_buffer_reference" + version="0.9.2" + introspectable="0"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="721">Increases the reference count on @buffer by one. This prevents @buffer from +being destroyed until a matching call to hb_buffer_destroy() is made.</doc> + <source-position filename="../src/hb-buffer.h" line="185"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="728"> +The referenced #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="723">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_reset" + c:identifier="hb_buffer_reset" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1205">Resets the buffer to its initial status, as if it was just newly created +with hb_buffer_create().</doc> + <source-position filename="../src/hb-buffer.h" line="361"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1207">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_reverse" + c:identifier="hb_buffer_reverse" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1424">Reverses buffer contents.</doc> + <source-position filename="../src/hb-buffer.h" line="375"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1426">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_reverse_clusters" + c:identifier="hb_buffer_reverse_clusters" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1455">Reverses buffer clusters. That is, the buffer contents are +reversed, then each cluster (consecutive items having the +same cluster number) are reversed again.</doc> + <source-position filename="../src/hb-buffer.h" line="382"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1457">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_reverse_range" + c:identifier="hb_buffer_reverse_range" + version="0.9.41"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1438">Reverses buffer contents between start to end.</doc> + <source-position filename="../src/hb-buffer.h" line="378"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1440">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="start" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1441">start index.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="end" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1442">end index.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <bitfield name="buffer_serialize_flags_t" + version="0.9.20" + glib:type-name="hb_buffer_serialize_flags_t" + glib:get-type="hb_gobject_buffer_serialize_flags_get_type" + c:type="hb_buffer_serialize_flags_t"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="459">Flags that control what glyph information are serialized in hb_buffer_serialize_glyphs().</doc> + <member name="default" + value="0" + c:identifier="HB_BUFFER_SERIALIZE_FLAG_DEFAULT" + glib:nick="default"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="461">serialize glyph names, clusters and positions.</doc> + </member> + <member name="no_clusters" + value="1" + c:identifier="HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS" + glib:nick="no-clusters"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="462">do not serialize glyph cluster.</doc> + </member> + <member name="no_positions" + value="2" + c:identifier="HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS" + glib:nick="no-positions"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="463">do not serialize glyph position information.</doc> + </member> + <member name="no_glyph_names" + value="4" + c:identifier="HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES" + glib:nick="no-glyph-names"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="464">do no serialize glyph name.</doc> + </member> + <member name="glyph_extents" + value="8" + c:identifier="HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS" + glib:nick="glyph-extents"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="465">serialize glyph extents.</doc> + </member> + <member name="glyph_flags" + value="16" + c:identifier="HB_BUFFER_SERIALIZE_FLAG_GLYPH_FLAGS" + glib:nick="glyph-flags"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="466">serialize glyph flags. Since: 1.5.0</doc> + </member> + <member name="no_advances" + value="32" + c:identifier="HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES" + glib:nick="no-advances"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="467">do not serialize glyph advances, + glyph offsets will reflect absolute glyph positions. Since: 1.8.0</doc> + </member> + </bitfield> + <function name="buffer_serialize_format_from_string" + c:identifier="hb_buffer_serialize_format_from_string" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="56">Parses a string into an #hb_buffer_serialize_format_t. Does not check if +@str is a valid buffer serialization format, use +hb_buffer_serialize_list_formats() to get the list of supported formats.</doc> + <source-position filename="../src/hb-buffer.h" line="502"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="65">The parsed #hb_buffer_serialize_format_t.</doc> + <type name="buffer_serialize_format_t" + c:type="hb_buffer_serialize_format_t"/> + </return-value> + <parameters> + <parameter name="str" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="58">a string to parse</doc> + <array length="1" zero-terminated="0" c:type="const char*"> + <type name="guint8"/> + </array> + </parameter> + <parameter name="len" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="59">length of @str, or -1 if string is %NULL terminated</doc> + <type name="gint" c:type="int"/> + </parameter> + </parameters> + </function> + <enumeration name="buffer_serialize_format_t" + version="0.9.2" + glib:type-name="hb_buffer_serialize_format_t" + glib:get-type="hb_gobject_buffer_serialize_format_get_type" + c:type="hb_buffer_serialize_format_t"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="484">The buffer serialization and de-serialization format used in +hb_buffer_serialize_glyphs() and hb_buffer_deserialize_glyphs().</doc> + <member name="text" + value="1413830740" + c:identifier="HB_BUFFER_SERIALIZE_FORMAT_TEXT" + glib:nick="text"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="486">a human-readable, plain text format.</doc> + </member> + <member name="json" + value="1246973774" + c:identifier="HB_BUFFER_SERIALIZE_FORMAT_JSON" + glib:nick="json"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="487">a machine-readable JSON format.</doc> + </member> + <member name="invalid" + value="0" + c:identifier="HB_BUFFER_SERIALIZE_FORMAT_INVALID" + glib:nick="invalid"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="488">invalid format.</doc> + </member> + </enumeration> + <function name="buffer_serialize_format_to_string" + c:identifier="hb_buffer_serialize_format_to_string" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="77">Converts @format to the string corresponding it, or %NULL if it is not a valid +#hb_buffer_serialize_format_t.</doc> + <source-position filename="../src/hb-buffer.h" line="505"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="84"> +A %NULL terminated string corresponding to @format. Should not be freed.</doc> + <type name="utf8" c:type="const char*"/> + </return-value> + <parameters> + <parameter name="format" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="79">an #hb_buffer_serialize_format_t to convert.</doc> + <type name="buffer_serialize_format_t" + c:type="hb_buffer_serialize_format_t"/> + </parameter> + </parameters> + </function> + <function name="buffer_serialize_glyphs" + c:identifier="hb_buffer_serialize_glyphs" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="285">Serializes @buffer into a textual representation of its glyph content, +useful for showing the contents of the buffer, for example during debugging. +There are currently two supported serialization formats: + +## text +A human-readable, plain text format. +The serialized glyphs will look something like: + +``` +[uni0651=0@518,0+0|uni0628=0+1897] +``` +- The serialized glyphs are delimited with `[` and `]`. +- Glyphs are separated with `|` +- Each glyph starts with glyph name, or glyph index if + #HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES flag is set. Then, + - If #HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS is not set, `=` then #hb_glyph_info_t.cluster. + - If #HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS is not set, the #hb_glyph_position_t in the format: + - If both #hb_glyph_position_t.x_offset and #hb_glyph_position_t.y_offset are not 0, `@x_offset,y_offset`. Then, + - `+x_advance`, then `,y_advance` if #hb_glyph_position_t.y_advance is not 0. Then, + - If #HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS is set, the + #hb_glyph_extents_t in the format + `&lt;x_bearing,y_bearing,width,height&gt;` + +## json +TODO.</doc> + <source-position filename="../src/hb-buffer.h" line="511"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="326">The number of serialized items.</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="287">an #hb_buffer_t buffer.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="start" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="288">the first item in @buffer to serialize.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="end" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="289">the last item in @buffer to serialize.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="buf" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="290">output string to + write serialized buffer into.</doc> + <array length="4" zero-terminated="0" c:type="char*"> + <type name="guint8"/> + </array> + </parameter> + <parameter name="buf_size" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="292">the size of @buf.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="buf_consumed" + direction="out" + caller-allocates="0" + transfer-ownership="full" + optional="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="293">if not %NULL, will be set to the number of byes written into @buf.</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="font" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="294">the #hb_font_t used to shape this buffer, needed to + read glyph names and extents. If %NULL, and empty font will be used.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="format" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="296">the #hb_buffer_serialize_format_t to use for formatting the output.</doc> + <type name="buffer_serialize_format_t" + c:type="hb_buffer_serialize_format_t"/> + </parameter> + <parameter name="flags" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="297">the #hb_buffer_serialize_flags_t that control what glyph properties + to serialize.</doc> + <type name="buffer_serialize_flags_t" + c:type="hb_buffer_serialize_flags_t"/> + </parameter> + </parameters> + </function> + <function name="buffer_serialize_list_formats" + c:identifier="hb_buffer_serialize_list_formats" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="40">Returns a list of supported buffer serialization formats.</doc> + <source-position filename="../src/hb-buffer.h" line="508"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer-serialize.cc" + line="45"> +A string array of buffer serialization formats. Should not be freed.</doc> + <array c:type="const char**"> + <type name="utf8"/> + </array> + </return-value> + </function> + <function name="buffer_set_cluster_level" + c:identifier="hb_buffer_set_cluster_level" + version="0.9.42"> + <source-position filename="../src/hb-buffer.h" line="329"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1091">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="cluster_level" transfer-ownership="none"> + <type name="buffer_cluster_level_t" + c:type="hb_buffer_cluster_level_t"/> + </parameter> + </parameters> + </function> + <function name="buffer_set_content_type" + c:identifier="hb_buffer_set_content_type" + version="0.9.5"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="809">Sets the type of @buffer contents, buffers are either empty, contain +characters (before shaping) or glyphs (the result of shaping).</doc> + <source-position filename="../src/hb-buffer.h" line="215"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="811">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="content_type" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="812">the type of buffer contents to set</doc> + <type name="buffer_content_type_t" + c:type="hb_buffer_content_type_t"/> + </parameter> + </parameters> + </function> + <function name="buffer_set_direction" + c:identifier="hb_buffer_set_direction" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="884">Set the text flow direction of the buffer. No shaping can happen without +setting @buffer direction, and it controls the visual direction for the +output glyphs; for RTL direction the glyphs will be reversed. Many layout +features depend on the proper setting of the direction, for example, +reversing RTL text before shaping, then shaping with LTR direction is not +the same as keeping the text in logical order and shaping with RTL +direction.</doc> + <source-position filename="../src/hb-buffer.h" line="230"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="886">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="887">the #hb_direction_t of the @buffer</doc> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + </parameters> + </function> + <function name="buffer_set_flags" + c:identifier="hb_buffer_set_flags" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1053">Sets @buffer flags to @flags. See #hb_buffer_flags_t.</doc> + <source-position filename="../src/hb-buffer.h" line="304"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1055">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="flags" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1056">the buffer flags to set.</doc> + <type name="buffer_flags_t" c:type="hb_buffer_flags_t"/> + </parameter> + </parameters> + </function> + <function name="buffer_set_invisible_glyph" + c:identifier="hb_buffer_set_invisible_glyph" + version="2.0.0"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1165">Sets the #hb_codepoint_t that replaces invisible characters in +the shaping result. If set to zero (default), the glyph for the +U+0020 SPACE character is used. Otherwise, this value is used +verbatim.</doc> + <source-position filename="../src/hb-buffer.h" line="353"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1167">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="invisible" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1168">the invisible #hb_codepoint_t</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="buffer_set_language" + c:identifier="hb_buffer_set_language" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="971">Sets the language of @buffer to @language. + +Languages are crucial for selecting which OpenType feature to apply to the +buffer which can result in applying language-specific behaviour. Languages +are orthogonal to the scripts, and though they are related, they are +different concepts and should not be confused with each other. + +Use hb_language_from_string() to convert from BCP 47 language tags to +#hb_language_t.</doc> + <source-position filename="../src/hb-buffer.h" line="244"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="973">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="language" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="974">an hb_language_t to set.</doc> + <type name="language_t" c:type="hb_language_t"/> + </parameter> + </parameters> + </function> + <function name="buffer_set_length" + c:identifier="hb_buffer_set_length" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1296">Similar to hb_buffer_pre_allocate(), but clears any new items added at the +end.</doc> + <source-position filename="../src/hb-buffer.h" line="434"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1304">%true if @buffer memory allocation succeeded, %false otherwise.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1298">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1299">the new length of @buffer.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="buffer_set_message_func" + c:identifier="hb_buffer_set_message_func" + version="1.1.3"> + <source-position filename="../src/hb-buffer.h" line="579"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1970">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="buffer_message_func_t" + c:type="hb_buffer_message_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="buffer_set_replacement_codepoint" + c:identifier="hb_buffer_set_replacement_codepoint" + version="0.9.31"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1125">Sets the #hb_codepoint_t that replaces invalid entries for a given encoding +when adding text to @buffer. + +Default is %HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT.</doc> + <source-position filename="../src/hb-buffer.h" line="346"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1127">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="replacement" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1128">the replacement #hb_codepoint_t</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="buffer_set_script" + c:identifier="hb_buffer_set_script" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="927">Sets the script of @buffer to @script. + +Script is crucial for choosing the proper shaping behaviour for scripts that +require it (e.g. Arabic) and the which OpenType features defined in the font +to be applied. + +You can pass one of the predefined #hb_script_t values, or use +hb_script_from_string() or hb_script_from_iso15924_tag() to get the +corresponding script from an ISO 15924 script tag.</doc> + <source-position filename="../src/hb-buffer.h" line="237"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="929">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="script" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="930">an #hb_script_t to set.</doc> + <type name="script_t" c:type="hb_script_t"/> + </parameter> + </parameters> + </function> + <function name="buffer_set_segment_properties" + c:identifier="hb_buffer_set_segment_properties" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1015">Sets the segment properties of the buffer, a shortcut for calling +hb_buffer_set_direction(), hb_buffer_set_script() and +hb_buffer_set_language() individually.</doc> + <source-position filename="../src/hb-buffer.h" line="252"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1017">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="props" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1018">an #hb_segment_properties_t to use.</doc> + <type name="segment_properties_t" + c:type="const hb_segment_properties_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_set_unicode_funcs" + c:identifier="hb_buffer_set_unicode_funcs" + version="0.9.2"> + <source-position filename="../src/hb-buffer.h" line="223"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="846">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="unicode_funcs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + </parameters> + </function> + <function name="buffer_set_user_data" + c:identifier="hb_buffer_set_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-buffer.h" line="191"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="768">an #hb_buffer_t.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + <parameter name="data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + <parameter name="replace" transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </parameter> + </parameters> + </function> + <record name="buffer_t" + c:type="hb_buffer_t" + glib:type-name="hb_buffer_t" + glib:get-type="hb_gobject_buffer_get_type" + c:symbol-prefix="gobject_buffer"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="169">The main structure holding the input text and its properties before shaping, +and output glyphs and their information after shaping.</doc> + <source-position filename="../src/hb-buffer.h" line="176"/> + </record> + <function name="color_get_alpha" + c:identifier="hb_color_get_alpha" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="1034">color: a #hb_color_t we are interested in its channels.</doc> + <source-position filename="../src/hb-common.h" line="496"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="1038">Alpha channel value of the given color</doc> + <type name="guint8" c:type="uint8_t"/> + </return-value> + <parameters> + <parameter name="color" transfer-ownership="none"> + <type name="color_t" c:type="hb_color_t"/> + </parameter> + </parameters> + </function> + <function name="color_get_blue" + c:identifier="hb_color_get_blue" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="1076">color: a #hb_color_t we are interested in its channels.</doc> + <source-position filename="../src/hb-common.h" line="508"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="1080">Blue channel value of the given color</doc> + <type name="guint8" c:type="uint8_t"/> + </return-value> + <parameters> + <parameter name="color" transfer-ownership="none"> + <type name="color_t" c:type="hb_color_t"/> + </parameter> + </parameters> + </function> + <function name="color_get_green" + c:identifier="hb_color_get_green" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="1062">color: a #hb_color_t we are interested in its channels.</doc> + <source-position filename="../src/hb-common.h" line="504"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="1066">Green channel value of the given color</doc> + <type name="guint8" c:type="uint8_t"/> + </return-value> + <parameters> + <parameter name="color" transfer-ownership="none"> + <type name="color_t" c:type="hb_color_t"/> + </parameter> + </parameters> + </function> + <function name="color_get_red" + c:identifier="hb_color_get_red" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="1048">color: a #hb_color_t we are interested in its channels.</doc> + <source-position filename="../src/hb-common.h" line="500"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="1052">Red channel value of the given color</doc> + <type name="guint8" c:type="uint8_t"/> + </return-value> + <parameters> + <parameter name="color" transfer-ownership="none"> + <type name="color_t" c:type="hb_color_t"/> + </parameter> + </parameters> + </function> + <callback name="destroy_func_t" c:type="hb_destroy_func_t"> + <source-position filename="../src/hb-common.h" line="418"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="0"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="direction_from_string" + c:identifier="hb_direction_from_string" + version="0.9.2"> + <source-position filename="../src/hb-common.h" line="146"/> + <return-value transfer-ownership="none"> + <type name="direction_t" c:type="hb_direction_t"/> + </return-value> + <parameters> + <parameter name="str" transfer-ownership="none"> + <array length="1" zero-terminated="0" c:type="const char*"> + <type name="guint8"/> + </array> + </parameter> + <parameter name="len" transfer-ownership="none"> + <type name="gint" c:type="int"/> + </parameter> + </parameters> + </function> + <enumeration name="direction_t" + glib:type-name="hb_direction_t" + glib:get-type="hb_gobject_direction_get_type" + c:type="hb_direction_t"> + <member name="invalid" + value="0" + c:identifier="HB_DIRECTION_INVALID" + glib:nick="invalid"> + <doc xml:space="preserve" + filename="../src/hb-common.h" + line="130">Initial, unset direction.</doc> + </member> + <member name="ltr" + value="4" + c:identifier="HB_DIRECTION_LTR" + glib:nick="ltr"> + <doc xml:space="preserve" + filename="../src/hb-common.h" + line="131">Text is set horizontally from left to right.</doc> + </member> + <member name="rtl" + value="5" + c:identifier="HB_DIRECTION_RTL" + glib:nick="rtl"> + <doc xml:space="preserve" + filename="../src/hb-common.h" + line="132">Text is set horizontally from right to left.</doc> + </member> + <member name="ttb" + value="6" + c:identifier="HB_DIRECTION_TTB" + glib:nick="ttb"> + <doc xml:space="preserve" + filename="../src/hb-common.h" + line="133">Text is set vertically from top to bottom.</doc> + </member> + <member name="btt" + value="7" + c:identifier="HB_DIRECTION_BTT" + glib:nick="btt"> + <doc xml:space="preserve" + filename="../src/hb-common.h" + line="134">Text is set vertically from bottom to top.</doc> + </member> + </enumeration> + <function name="direction_to_string" + c:identifier="hb_direction_to_string" + version="0.9.2"> + <source-position filename="../src/hb-common.h" line="149"/> + <return-value transfer-ownership="none"> + <type name="utf8" c:type="const char*"/> + </return-value> + <parameters> + <parameter name="direction" transfer-ownership="none"> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + </parameters> + </function> + <function name="face_builder_add_table" + c:identifier="hb_face_builder_add_table" + version="1.9.0"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="709">Add table for @tag with data provided by @blob to the face. @face must +be created using hb_face_builder_create().</doc> + <source-position filename="../src/hb-face.h" line="151"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="tag" transfer-ownership="none"> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="blob" transfer-ownership="none"> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + </parameters> + </function> + <function name="face_builder_create" + c:identifier="hb_face_builder_create" + version="1.9.0"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="687">Creates a #hb_face_t that can be used with hb_face_builder_add_table(). +After tables are added to the face, it can be compiled to a binary +font file by calling hb_face_reference_blob().</doc> + <source-position filename="../src/hb-face.h" line="148"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="694">New face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </return-value> + </function> + <function name="face_collect_unicodes" + c:identifier="hb_face_collect_unicodes" + version="1.9.0"> + <source-position filename="../src/hb-face.h" line="130"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="545">font face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="out" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="546">set to add Unicode characters covered by @face to.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="face_collect_variation_selectors" + c:identifier="hb_face_collect_variation_selectors" + version="1.9.0"> + <source-position filename="../src/hb-face.h" line="134"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="558">font face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="out" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="559">set to add Variation Selector characters covered by @face to.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="face_collect_variation_unicodes" + c:identifier="hb_face_collect_variation_unicodes" + version="1.9.0"> + <source-position filename="../src/hb-face.h" line="138"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="573">font face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="variation_selector" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="out" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="574">set to add Unicode characters for @variation_selector covered by @face to.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="face_count" c:identifier="hb_face_count" version="1.7.7"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="51">Get number of faces in a blob.</doc> + <source-position filename="../src/hb-face.h" line="42"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="57">Number of faces in @blob</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="blob" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="53">a blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + </parameters> + </function> + <function name="face_create" c:identifier="hb_face_create" version="0.9.2"> + <source-position filename="../src/hb-face.h" line="52"/> + <return-value transfer-ownership="full"> + <type name="face_t" c:type="hb_face_t*"/> + </return-value> + <parameters> + <parameter name="blob" transfer-ownership="none"> + <type name="blob_t" c:type="hb_blob_t*"/> + </parameter> + <parameter name="index" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="face_create_for_tables" + c:identifier="hb_face_create_for_tables" + version="0.9.2"> + <source-position filename="../src/hb-face.h" line="59"/> + <return-value transfer-ownership="full"> + <type name="face_t" c:type="hb_face_t*"/> + </return-value> + <parameters> + <parameter name="reference_table_func" + transfer-ownership="none" + scope="notified" + closure="1" + destroy="2"> + <type name="reference_table_func_t" + c:type="hb_reference_table_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="face_destroy" + c:identifier="hb_face_destroy" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-face.h" line="70"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="256">a face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="face_get_empty" + c:identifier="hb_face_get_empty" + version="0.9.2"> + <source-position filename="../src/hb-face.h" line="64"/> + <return-value transfer-ownership="full"> + <type name="face_t" c:type="hb_face_t*"/> + </return-value> + </function> + <function name="face_get_glyph_count" + c:identifier="hb_face_get_glyph_count" + version="0.9.7"> + <source-position filename="../src/hb-face.h" line="116"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="488">a face.</doc> + <type name="face_t" c:type="const hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="face_get_index" + c:identifier="hb_face_get_index" + version="0.9.2"> + <source-position filename="../src/hb-face.h" line="102"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="418">a face.</doc> + <type name="face_t" c:type="const hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="face_get_table_tags" + c:identifier="hb_face_get_table_tags" + version="1.6.0"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="502">Retrieves table tags for a face, if possible.</doc> + <source-position filename="../src/hb-face.h" line="119"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="511">total number of tables, or 0 if not possible to list.</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="504">a face.</doc> + <type name="face_t" c:type="const hb_face_t*"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="505">index of first tag to return.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="table_count" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="506">input length of @table_tags array, output number of items written.</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="table_tags" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="507">array to write tags into.</doc> + <type name="tag_t" c:type="hb_tag_t*"/> + </parameter> + </parameters> + </function> + <function name="face_get_upem" + c:identifier="hb_face_get_upem" + version="0.9.2"> + <source-position filename="../src/hb-face.h" line="109"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="453">a face.</doc> + <type name="face_t" c:type="const hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="face_get_user_data" + c:identifier="hb_face_get_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-face.h" line="80"/> + <return-value transfer-ownership="none" nullable="1"> + <type name="gpointer" c:type="void*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="310">a face.</doc> + <type name="face_t" c:type="const hb_face_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + </parameters> + </function> + <function name="face_is_immutable" + c:identifier="hb_face_is_immutable" + version="0.9.2"> + <source-position filename="../src/hb-face.h" line="87"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="345">a face.</doc> + <type name="face_t" c:type="const hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="face_make_immutable" + c:identifier="hb_face_make_immutable" + version="0.9.2"> + <source-position filename="../src/hb-face.h" line="84"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="328">a face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="face_reference" + c:identifier="hb_face_reference" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-face.h" line="67"/> + <return-value transfer-ownership="full"> + <type name="face_t" c:type="hb_face_t*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="240">a face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="face_reference_blob" + c:identifier="hb_face_reference_blob" + version="0.9.2"> + <source-position filename="../src/hb-face.h" line="95"/> + <return-value transfer-ownership="full"> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="383">a face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="face_reference_table" + c:identifier="hb_face_reference_table" + version="0.9.2"> + <source-position filename="../src/hb-face.h" line="91"/> + <return-value transfer-ownership="full"> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="362">a face.</doc> + <type name="face_t" c:type="const hb_face_t*"/> + </parameter> + <parameter name="tag" transfer-ownership="none"> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + </parameters> + </function> + <function name="face_set_glyph_count" + c:identifier="hb_face_set_glyph_count" + version="0.9.7"> + <source-position filename="../src/hb-face.h" line="112"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="469">a face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="glyph_count" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="face_set_index" + c:identifier="hb_face_set_index" + version="0.9.2"> + <source-position filename="../src/hb-face.h" line="98"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="399">a face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="index" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="face_set_upem" + c:identifier="hb_face_set_upem" + version="0.9.2"> + <source-position filename="../src/hb-face.h" line="105"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="434">a face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="upem" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="face_set_user_data" + c:identifier="hb_face_set_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-face.h" line="73"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="286">a face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + <parameter name="data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + <parameter name="replace" transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </parameter> + </parameters> + </function> + <record name="face_t" + c:type="hb_face_t" + glib:type-name="hb_face_t" + glib:get-type="hb_gobject_face_get_type" + c:symbol-prefix="gobject_face"> + <source-position filename="../src/hb-face.h" line="49"/> + </record> + <function name="feature_from_string" + c:identifier="hb_feature_from_string" + version="0.9.5"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="841">Parses a string into a #hb_feature_t. + +The format for specifying feature strings follows. All valid CSS +font-feature-settings values other than 'normal' and the global values are +also accepted, though not documented below. CSS string escapes are not +supported. + +The range indices refer to the positions between Unicode characters. The +position before the first character is always 0. + +The format is Python-esque. Here is how it all works: + +<informaltable pgwide='1' align='left' frame='none'> +<tgroup cols='5'> +<thead> +<row><entry>Syntax</entry> <entry>Value</entry> <entry>Start</entry> <entry>End</entry></row> +</thead> +<tbody> +<row><entry>Setting value:</entry></row> +<row><entry>kern</entry> <entry>1</entry> <entry>0</entry> <entry>∞</entry> <entry>Turn feature on</entry></row> +<row><entry>+kern</entry> <entry>1</entry> <entry>0</entry> <entry>∞</entry> <entry>Turn feature on</entry></row> +<row><entry>-kern</entry> <entry>0</entry> <entry>0</entry> <entry>∞</entry> <entry>Turn feature off</entry></row> +<row><entry>kern=0</entry> <entry>0</entry> <entry>0</entry> <entry>∞</entry> <entry>Turn feature off</entry></row> +<row><entry>kern=1</entry> <entry>1</entry> <entry>0</entry> <entry>∞</entry> <entry>Turn feature on</entry></row> +<row><entry>aalt=2</entry> <entry>2</entry> <entry>0</entry> <entry>∞</entry> <entry>Choose 2nd alternate</entry></row> +<row><entry>Setting index:</entry></row> +<row><entry>kern[]</entry> <entry>1</entry> <entry>0</entry> <entry>∞</entry> <entry>Turn feature on</entry></row> +<row><entry>kern[:]</entry> <entry>1</entry> <entry>0</entry> <entry>∞</entry> <entry>Turn feature on</entry></row> +<row><entry>kern[5:]</entry> <entry>1</entry> <entry>5</entry> <entry>∞</entry> <entry>Turn feature on, partial</entry></row> +<row><entry>kern[:5]</entry> <entry>1</entry> <entry>0</entry> <entry>5</entry> <entry>Turn feature on, partial</entry></row> +<row><entry>kern[3:5]</entry> <entry>1</entry> <entry>3</entry> <entry>5</entry> <entry>Turn feature on, range</entry></row> +<row><entry>kern[3]</entry> <entry>1</entry> <entry>3</entry> <entry>3+1</entry> <entry>Turn feature on, single char</entry></row> +<row><entry>Mixing it all:</entry></row> +<row><entry>aalt[3:5]=2</entry> <entry>2</entry> <entry>3</entry> <entry>5</entry> <entry>Turn 2nd alternate on for range</entry></row> +</tbody> +</tgroup> +</informaltable></doc> + <source-position filename="../src/hb-common.h" line="459"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="885">%true if @str is successfully parsed, %false otherwise.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="str" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="843">a string to parse</doc> + <array length="1" zero-terminated="0" c:type="const char*"> + <type name="guint8"/> + </array> + </parameter> + <parameter name="len" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="844">length of @str, or -1 if string is %NULL terminated</doc> + <type name="gint" c:type="int"/> + </parameter> + <parameter name="feature" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="845">the #hb_feature_t to initialize with the parsed values</doc> + <type name="feature_t" c:type="hb_feature_t*"/> + </parameter> + </parameters> + </function> + <record name="feature_t" + c:type="hb_feature_t" + glib:type-name="hb_feature_t" + glib:get-type="hb_gobject_feature_get_type" + c:symbol-prefix="gobject_feature"> + <doc xml:space="preserve" + filename="../src/hb-common.h" + line="436">The #hb_feature_t is the structure that holds information about requested +feature application. The feature will be applied with the given value to all +glyphs which are in clusters between @start (inclusive) and @end (exclusive). +Setting start to @HB_FEATURE_GLOBAL_START and end to @HB_FEATURE_GLOBAL_END +specifies that the feature always applies to the entire buffer.</doc> + <source-position filename="../src/hb-common.h" line="456"/> + <field name="tag" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-common.h" + line="438">a feature tag</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </field> + <field name="value" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-common.h" + line="439">0 disables the feature, non-zero (usually 1) enables the feature. +For features implemented as lookup type 3 (like 'salt') the @value is a one +based index into the alternates.</doc> + <type name="guint32" c:type="uint32_t"/> + </field> + <field name="start" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-common.h" + line="442">the cluster to start applying this feature setting (inclusive).</doc> + <type name="guint" c:type="unsigned int"/> + </field> + <field name="end" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-common.h" + line="443">the cluster to end applying this feature setting (exclusive).</doc> + <type name="guint" c:type="unsigned int"/> + </field> + <method name="_string" + c:identifier="hb_feature_to_string" + moved-to="feature_to_string" + version="0.9.5"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="911">Converts a #hb_feature_t into a %NULL-terminated string in the format +understood by hb_feature_from_string(). The client in responsible for +allocating big enough size for @buf, 128 bytes is more than enough.</doc> + <source-position filename="../src/hb-common.h" line="463"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <instance-parameter name="feature" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="913">an #hb_feature_t to convert</doc> + <type name="feature_t" c:type="hb_feature_t*"/> + </instance-parameter> + <parameter name="buf" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="914">output string</doc> + <array length="1" zero-terminated="0" c:type="char*"> + <type name="utf8" c:type="char"/> + </array> + </parameter> + <parameter name="size" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="915">the allocated size of @buf</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </method> + </record> + <function name="feature_to_string" + c:identifier="hb_feature_to_string" + version="0.9.5"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="911">Converts a #hb_feature_t into a %NULL-terminated string in the format +understood by hb_feature_from_string(). The client in responsible for +allocating big enough size for @buf, 128 bytes is more than enough.</doc> + <source-position filename="../src/hb-common.h" line="463"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="feature" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="913">an #hb_feature_t to convert</doc> + <type name="feature_t" c:type="hb_feature_t*"/> + </parameter> + <parameter name="buf" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="914">output string</doc> + <array length="2" zero-terminated="0" c:type="char*"> + <type name="utf8" c:type="char"/> + </array> + </parameter> + <parameter name="size" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="915">the allocated size of @buf</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="font_add_glyph_origin_for_direction" + c:identifier="hb_font_add_glyph_origin_for_direction" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="558"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1166">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="x" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="y" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + </parameters> + </function> + <function name="font_create" c:identifier="hb_font_create" version="0.9.2"> + <source-position filename="../src/hb-font.h" line="605"/> + <return-value transfer-ownership="full"> + <type name="font_t" c:type="hb_font_t*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1370">a face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="font_create_sub_font" + c:identifier="hb_font_create_sub_font" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="608"/> + <return-value transfer-ownership="full"> + <type name="font_t" c:type="hb_font_t*"/> + </return-value> + <parameters> + <parameter name="parent" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1407">parent font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="font_destroy" + c:identifier="hb_font_destroy" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-font.h" line="617"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1489">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <record name="font_extents_t" c:type="hb_font_extents_t"> + <source-position filename="../src/hb-font.h" line="100"/> + <field name="ascender" writable="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="descender" writable="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="line_gap" writable="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="reserved9" readable="0" private="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="reserved8" readable="0" private="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="reserved7" readable="0" private="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="reserved6" readable="0" private="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="reserved5" readable="0" private="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="reserved4" readable="0" private="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="reserved3" readable="0" private="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="reserved2" readable="0" private="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="reserved1" readable="0" private="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + </record> + <function name="font_funcs_create" + c:identifier="hb_font_funcs_create" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="51"/> + <return-value transfer-ownership="full"> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </return-value> + </function> + <function name="font_funcs_destroy" + c:identifier="hb_font_funcs_destroy" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-font.h" line="60"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="576">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_get_empty" + c:identifier="hb_font_funcs_get_empty" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="54"/> + <return-value transfer-ownership="full"> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </return-value> + </function> + <function name="font_funcs_get_user_data" + c:identifier="hb_font_funcs_get_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-font.h" line="71"/> + <return-value transfer-ownership="none" nullable="1"> + <type name="gpointer" c:type="void*"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="621">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_is_immutable" + c:identifier="hb_font_funcs_is_immutable" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="79"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="657">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_make_immutable" + c:identifier="hb_font_funcs_make_immutable" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="76"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="640">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_reference" + c:identifier="hb_font_funcs_reference" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-font.h" line="57"/> + <return-value transfer-ownership="full"> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="560">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_font_h_extents_func" + c:identifier="hb_font_funcs_set_font_h_extents_func" + version="1.1.2"> + <source-position filename="../src/hb-font.h" line="201"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="191">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_font_h_extents_func_t" + c:type="hb_font_get_font_h_extents_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_font_v_extents_func" + c:identifier="hb_font_funcs_set_font_v_extents_func" + version="1.1.2"> + <source-position filename="../src/hb-font.h" line="217"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="207">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_font_v_extents_func_t" + c:type="hb_font_get_font_v_extents_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_contour_point_func" + c:identifier="hb_font_funcs_set_glyph_contour_point_func" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="409"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="399">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_glyph_contour_point_func_t" + c:type="hb_font_get_glyph_contour_point_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_extents_func" + c:identifier="hb_font_funcs_set_glyph_extents_func" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="393"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="383">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_glyph_extents_func_t" + c:type="hb_font_get_glyph_extents_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_from_name_func" + c:identifier="hb_font_funcs_set_glyph_from_name_func" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="441"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="431">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_glyph_from_name_func_t" + c:type="hb_font_get_glyph_from_name_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_func" + c:identifier="hb_font_funcs_set_glyph_func" + version="0.9.2" + deprecated="1" + deprecated-version="1.2.3"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="2140">Deprecated. Use hb_font_funcs_set_nominal_glyph_func() and +hb_font_funcs_set_variation_glyph_func() instead.</doc> + <source-position filename="../src/hb-deprecated.h" line="67"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="2142">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="2143">callback function.</doc> + <type name="font_get_glyph_func_t" + c:type="hb_font_get_glyph_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="2144">data to pass to @func.</doc> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="2145">function to call when @user_data is not needed anymore.</doc> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_h_advance_func" + c:identifier="hb_font_funcs_set_glyph_h_advance_func" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="281"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="271">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_glyph_h_advance_func_t" + c:type="hb_font_get_glyph_h_advance_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_h_advances_func" + c:identifier="hb_font_funcs_set_glyph_h_advances_func" + version="1.8.6"> + <source-position filename="../src/hb-font.h" line="313"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="303">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_glyph_h_advances_func_t" + c:type="hb_font_get_glyph_h_advances_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_h_kerning_func" + c:identifier="hb_font_funcs_set_glyph_h_kerning_func" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="377"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="367">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_glyph_h_kerning_func_t" + c:type="hb_font_get_glyph_h_kerning_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_h_origin_func" + c:identifier="hb_font_funcs_set_glyph_h_origin_func" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="345"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="335">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_glyph_h_origin_func_t" + c:type="hb_font_get_glyph_h_origin_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_name_func" + c:identifier="hb_font_funcs_set_glyph_name_func" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="425"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="415">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_glyph_name_func_t" + c:type="hb_font_get_glyph_name_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_v_advance_func" + c:identifier="hb_font_funcs_set_glyph_v_advance_func" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="297"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="287">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_glyph_v_advance_func_t" + c:type="hb_font_get_glyph_v_advance_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_v_advances_func" + c:identifier="hb_font_funcs_set_glyph_v_advances_func" + version="1.8.6"> + <source-position filename="../src/hb-font.h" line="329"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="319">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_glyph_v_advances_func_t" + c:type="hb_font_get_glyph_v_advances_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_v_kerning_func" + c:identifier="hb_font_funcs_set_glyph_v_kerning_func" + version="0.9.2" + deprecated="1" + deprecated-version="2.0.0"> + <source-position filename="../src/hb-deprecated.h" line="183"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-deprecated.h" + line="172">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_glyph_v_kerning_func_t" + c:type="hb_font_get_glyph_v_kerning_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_glyph_v_origin_func" + c:identifier="hb_font_funcs_set_glyph_v_origin_func" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="361"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="351">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_glyph_v_origin_func_t" + c:type="hb_font_get_glyph_v_origin_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_nominal_glyph_func" + c:identifier="hb_font_funcs_set_nominal_glyph_func" + version="1.2.3"> + <source-position filename="../src/hb-font.h" line="233"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="223">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_nominal_glyph_func_t" + c:type="hb_font_get_nominal_glyph_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_nominal_glyphs_func" + c:identifier="hb_font_funcs_set_nominal_glyphs_func" + version="2.0.0"> + <source-position filename="../src/hb-font.h" line="249"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="239">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_nominal_glyphs_func_t" + c:type="hb_font_get_nominal_glyphs_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_user_data" + c:identifier="hb_font_funcs_set_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-font.h" line="63"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="597">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + <parameter name="data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + <parameter name="replace" transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </parameter> + </parameters> + </function> + <function name="font_funcs_set_variation_glyph_func" + c:identifier="hb_font_funcs_set_variation_glyph_func" + version="1.2.3"> + <source-position filename="../src/hb-font.h" line="265"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ffuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.h" + line="255">font functions.</doc> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_get_variation_glyph_func_t" + c:type="hb_font_get_variation_glyph_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <record name="font_funcs_t" + c:type="hb_font_funcs_t" + glib:type-name="hb_font_funcs_t" + glib:get-type="hb_gobject_font_funcs_get_type" + c:symbol-prefix="gobject_font_funcs"> + <source-position filename="../src/hb-font.h" line="48"/> + </record> + <function name="font_get_empty" + c:identifier="hb_font_get_empty" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="611"/> + <return-value transfer-ownership="full"> + <type name="font_t" c:type="hb_font_t*"/> + </return-value> + </function> + <function name="font_get_extents_for_direction" + c:identifier="hb_font_get_extents_for_direction" + version="1.1.3"> + <source-position filename="../src/hb-font.h" line="536"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1087">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="extents" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <type name="font_extents_t" c:type="hb_font_extents_t*"/> + </parameter> + </parameters> + </function> + <function name="font_get_face" + c:identifier="hb_font_get_face" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="649"/> + <return-value transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1665">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <callback name="font_get_font_extents_func_t" + c:type="hb_font_get_font_extents_func_t"> + <source-position filename="../src/hb-font.h" line="113"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="extents" transfer-ownership="none"> + <type name="font_extents_t" c:type="hb_font_extents_t*"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="3"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="font_get_glyph" + c:identifier="hb_font_get_glyph" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="531"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="757">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="variation_selector" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="glyph" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + </parameters> + </function> + <function name="font_get_glyph_advance_for_direction" + c:identifier="hb_font_get_glyph_advance_for_direction" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="540"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1104">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="x" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="y" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + </parameters> + </function> + <callback name="font_get_glyph_advance_func_t" + c:type="hb_font_get_glyph_advance_func_t"> + <source-position filename="../src/hb-font.h" line="138"/> + <return-value transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="3"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="font_get_glyph_advances_for_direction" + c:identifier="hb_font_get_glyph_advances_for_direction" + version="1.8.6"> + <source-position filename="../src/hb-font.h" line="545"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1124">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="count" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="first_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="const hb_codepoint_t*"/> + </parameter> + <parameter name="glyph_stride" transfer-ownership="none"> + <type name="guint" c:type="unsigned"/> + </parameter> + <parameter name="first_advance" transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="advance_stride" transfer-ownership="none"> + <type name="guint" c:type="unsigned"/> + </parameter> + </parameters> + </function> + <callback name="font_get_glyph_advances_func_t" + c:type="hb_font_get_glyph_advances_func_t"> + <source-position filename="../src/hb-font.h" line="144"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="count" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="first_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="const hb_codepoint_t*"/> + </parameter> + <parameter name="glyph_stride" transfer-ownership="none"> + <type name="guint" c:type="unsigned"/> + </parameter> + <parameter name="first_advance" transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="advance_stride" transfer-ownership="none"> + <type name="guint" c:type="unsigned"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="7"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="font_get_glyph_contour_point" + c:identifier="hb_font_get_glyph_contour_point" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="512"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1020">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="point_index" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="x" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="y" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + </parameters> + </function> + <function name="font_get_glyph_contour_point_for_origin" + c:identifier="hb_font_get_glyph_contour_point_for_origin" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="581"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1252">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="point_index" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="x" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="y" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + </parameters> + </function> + <callback name="font_get_glyph_contour_point_func_t" + c:type="hb_font_get_glyph_contour_point_func_t"> + <source-position filename="../src/hb-font.h" line="171"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="point_index" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="x" transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="y" transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="6"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="font_get_glyph_extents" + c:identifier="hb_font_get_glyph_extents" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="507"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1000">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="extents" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <type name="glyph_extents_t" c:type="hb_glyph_extents_t*"/> + </parameter> + </parameters> + </function> + <function name="font_get_glyph_extents_for_origin" + c:identifier="hb_font_get_glyph_extents_for_origin" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="575"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1230">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="extents" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <type name="glyph_extents_t" c:type="hb_glyph_extents_t*"/> + </parameter> + </parameters> + </function> + <callback name="font_get_glyph_extents_func_t" + c:type="hb_font_get_glyph_extents_func_t"> + <source-position filename="../src/hb-font.h" line="167"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="extents" transfer-ownership="none"> + <type name="glyph_extents_t" c:type="hb_glyph_extents_t*"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="4"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="font_get_glyph_from_name" + c:identifier="hb_font_get_glyph_from_name" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="521"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1063">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="name" transfer-ownership="none"> + <array length="2" zero-terminated="0" c:type="const char*"> + <type name="utf8" c:type="char"/> + </array> + </parameter> + <parameter name="len" transfer-ownership="none"> + <type name="gint" c:type="int"/> + </parameter> + <parameter name="glyph" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + </parameters> + </function> + <callback name="font_get_glyph_from_name_func_t" + c:type="hb_font_get_glyph_from_name_func_t"> + <source-position filename="../src/hb-font.h" line="181"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="name" transfer-ownership="none"> + <type name="utf8" c:type="const char*"/> + </parameter> + <parameter name="len" transfer-ownership="none"> + <type name="gint" c:type="int"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="5"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <callback name="font_get_glyph_func_t" c:type="hb_font_get_glyph_func_t"> + <source-position filename="../src/hb-deprecated.h" line="61"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="variation_selector" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="5"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="font_get_glyph_h_advance" + c:identifier="hb_font_get_glyph_h_advance" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="472"/> + <return-value transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="844">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="font_get_glyph_h_advances" + c:identifier="hb_font_get_glyph_h_advances" + version="1.8.6"> + <source-position filename="../src/hb-font.h" line="479"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="880">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="count" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="first_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="const hb_codepoint_t*"/> + </parameter> + <parameter name="glyph_stride" transfer-ownership="none"> + <type name="guint" c:type="unsigned"/> + </parameter> + <parameter name="first_advance" transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="advance_stride" transfer-ownership="none"> + <type name="guint" c:type="unsigned"/> + </parameter> + </parameters> + </function> + <function name="font_get_glyph_h_kerning" + c:identifier="hb_font_get_glyph_h_kerning" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="503"/> + <return-value transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="959">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="left_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="right_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="font_get_glyph_h_origin" + c:identifier="hb_font_get_glyph_h_origin" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="494"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="917">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="x" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="y" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + </parameters> + </function> + <function name="font_get_glyph_kerning_for_direction" + c:identifier="hb_font_get_glyph_kerning_for_direction" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="569"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1208">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="first_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="second_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="x" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="y" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + </parameters> + </function> + <callback name="font_get_glyph_kerning_func_t" + c:type="hb_font_get_glyph_kerning_func_t"> + <source-position filename="../src/hb-font.h" line="161"/> + <return-value transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="first_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="second_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="4"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="font_get_glyph_name" + c:identifier="hb_font_get_glyph_name" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="517"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1042">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="name" transfer-ownership="none"> + <array length="3" zero-terminated="0" c:type="char*"> + <type name="utf8" c:type="char"/> + </array> + </parameter> + <parameter name="size" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <callback name="font_get_glyph_name_func_t" + c:type="hb_font_get_glyph_name_func_t"> + <source-position filename="../src/hb-font.h" line="177"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="name" transfer-ownership="none"> + <type name="utf8" c:type="char*"/> + </parameter> + <parameter name="size" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="5"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="font_get_glyph_origin_for_direction" + c:identifier="hb_font_get_glyph_origin_for_direction" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="553"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1145">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="x" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="y" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + </parameters> + </function> + <callback name="font_get_glyph_origin_func_t" + c:type="hb_font_get_glyph_origin_func_t"> + <source-position filename="../src/hb-font.h" line="154"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="x" transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="y" transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="5"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="font_get_glyph_v_advance" + c:identifier="hb_font_get_glyph_v_advance" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="475"/> + <return-value transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="862">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="font_get_glyph_v_advances" + c:identifier="hb_font_get_glyph_v_advances" + version="1.8.6"> + <source-position filename="../src/hb-font.h" line="486"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="898">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="count" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="first_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="const hb_codepoint_t*"/> + </parameter> + <parameter name="glyph_stride" transfer-ownership="none"> + <type name="guint" c:type="unsigned"/> + </parameter> + <parameter name="first_advance" transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="advance_stride" transfer-ownership="none"> + <type name="guint" c:type="unsigned"/> + </parameter> + </parameters> + </function> + <function name="font_get_glyph_v_kerning" + c:identifier="hb_font_get_glyph_v_kerning" + version="0.9.2" + deprecated="1" + deprecated-version="2.0.0"> + <source-position filename="../src/hb-deprecated.h" line="188"/> + <return-value transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="979">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="top_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="bottom_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="font_get_glyph_v_origin" + c:identifier="hb_font_get_glyph_v_origin" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="498"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="938">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="x" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="y" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + </parameters> + </function> + <function name="font_get_h_extents" + c:identifier="hb_font_get_h_extents" + version="1.1.3"> + <source-position filename="../src/hb-font.h" line="448"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="721">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="extents" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <type name="font_extents_t" c:type="hb_font_extents_t*"/> + </parameter> + </parameters> + </function> + <function name="font_get_nominal_glyph" + c:identifier="hb_font_get_nominal_glyph" + version="1.2.3"> + <source-position filename="../src/hb-font.h" line="455"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="780">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="glyph" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + </parameters> + </function> + <callback name="font_get_nominal_glyph_func_t" + c:type="hb_font_get_nominal_glyph_func_t"> + <source-position filename="../src/hb-font.h" line="120"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="4"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="font_get_nominal_glyphs" + c:identifier="hb_font_get_nominal_glyphs" + version="2.6.3"> + <source-position filename="../src/hb-font.h" line="464"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="800">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="count" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="first_unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="const hb_codepoint_t*"/> + </parameter> + <parameter name="unicode_stride" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="first_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="glyph_stride" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <callback name="font_get_nominal_glyphs_func_t" + c:type="hb_font_get_nominal_glyphs_func_t"> + <source-position filename="../src/hb-font.h" line="129"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="count" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="first_unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="const hb_codepoint_t*"/> + </parameter> + <parameter name="unicode_stride" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="first_glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="glyph_stride" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="7"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="font_get_parent" + c:identifier="hb_font_get_parent" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="642"/> + <return-value transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1621">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="font_get_ppem" + c:identifier="hb_font_get_ppem" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="684"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1814">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="x_ppem" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="y_ppem" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="font_get_ptem" + c:identifier="hb_font_get_ptem" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1851">Gets the "point size" of the font. A value of 0 means unset.</doc> + <source-position filename="../src/hb-font.h" line="696"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1857">Point size.</doc> + <type name="gfloat" c:type="float"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1853">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="font_get_scale" + c:identifier="hb_font_get_scale" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="671"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1773">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="x_scale" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="gint" c:type="int*"/> + </parameter> + <parameter name="y_scale" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="gint" c:type="int*"/> + </parameter> + </parameters> + </function> + <function name="font_get_user_data" + c:identifier="hb_font_get_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-font.h" line="628"/> + <return-value transfer-ownership="none" nullable="1"> + <type name="gpointer" c:type="void*"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1541">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + </parameters> + </function> + <function name="font_get_v_extents" + c:identifier="hb_font_get_v_extents" + version="1.1.3"> + <source-position filename="../src/hb-font.h" line="451"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="739">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="extents" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <type name="font_extents_t" c:type="hb_font_extents_t*"/> + </parameter> + </parameters> + </function> + <function name="font_get_var_coords_normalized" + c:identifier="hb_font_get_var_coords_normalized" + version="1.4.2"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="2017">Return value is valid as long as variation coordinates of the font +are not modified.</doc> + <source-position filename="../src/hb-font.h" line="720"/> + <return-value transfer-ownership="none"> + <type name="gint" c:type="const int*"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="length" transfer-ownership="none"> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="font_get_variation_glyph" + c:identifier="hb_font_get_variation_glyph" + version="1.2.3"> + <source-position filename="../src/hb-font.h" line="459"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="823">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="variation_selector" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="glyph" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + </parameters> + </function> + <callback name="font_get_variation_glyph_func_t" + c:type="hb_font_get_variation_glyph_func_t"> + <source-position filename="../src/hb-font.h" line="124"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="variation_selector" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="5"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="font_glyph_from_string" + c:identifier="hb_font_glyph_from_string" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="593"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1297">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="s" transfer-ownership="none"> + <array length="2" zero-terminated="0" c:type="const char*"> + <type name="guint8"/> + </array> + </parameter> + <parameter name="len" transfer-ownership="none"> + <type name="gint" c:type="int"/> + </parameter> + <parameter name="glyph" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + </parameters> + </function> + <function name="font_glyph_to_string" + c:identifier="hb_font_glyph_to_string" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="588"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1277">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="s" transfer-ownership="none"> + <array length="3" zero-terminated="0" c:type="char*"> + <type name="utf8" c:type="char"/> + </array> + </parameter> + <parameter name="size" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="font_is_immutable" + c:identifier="hb_font_is_immutable" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="635"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1579">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="font_make_immutable" + c:identifier="hb_font_make_immutable" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="632"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1559">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="font_reference" + c:identifier="hb_font_reference" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-font.h" line="614"/> + <return-value transfer-ownership="full"> + <type name="font_t" c:type="hb_font_t*"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1473">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="font_set_face" + c:identifier="hb_font_set_face" + version="1.4.3"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1635">Sets font-face of @font.</doc> + <source-position filename="../src/hb-font.h" line="645"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1637">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1638">new face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="font_set_funcs" + c:identifier="hb_font_set_funcs" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="653"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1682">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="klass" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="font_funcs_t" c:type="hb_font_funcs_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_set_funcs_data" + c:identifier="hb_font_set_funcs_data" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="660"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1719">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="font_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + scope="notified" + destroy="2"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="font_set_parent" + c:identifier="hb_font_set_parent" + version="1.0.5"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1593">Sets parent font of @font.</doc> + <source-position filename="../src/hb-font.h" line="638"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1595">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="parent" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1596">new parent.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="font_set_ppem" + c:identifier="hb_font_set_ppem" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="679"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1792">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="x_ppem" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="y_ppem" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="font_set_ptem" + c:identifier="hb_font_set_ptem" + version="1.6.0"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1831">Sets "point size" of the font. Set to 0 to unset. + +There are 72 points in an inch.</doc> + <source-position filename="../src/hb-font.h" line="693"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1833">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="ptem" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1834">font size in points.</doc> + <type name="gfloat" c:type="float"/> + </parameter> + </parameters> + </function> + <function name="font_set_scale" + c:identifier="hb_font_set_scale" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="666"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1750">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="x_scale" transfer-ownership="none"> + <type name="gint" c:type="int"/> + </parameter> + <parameter name="y_scale" transfer-ownership="none"> + <type name="gint" c:type="int"/> + </parameter> + </parameters> + </function> + <function name="font_set_user_data" + c:identifier="hb_font_set_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-font.h" line="620"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1517">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + <parameter name="data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + <parameter name="replace" transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </parameter> + </parameters> + </function> + <function name="font_set_var_coords_design" + c:identifier="hb_font_set_var_coords_design" + version="1.4.2"> + <source-position filename="../src/hb-font.h" line="704"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="coords" transfer-ownership="none"> + <type name="gfloat" c:type="const float*"/> + </parameter> + <parameter name="coords_length" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="font_set_var_coords_normalized" + c:identifier="hb_font_set_var_coords_normalized" + version="1.4.2"> + <source-position filename="../src/hb-font.h" line="715"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="coords" transfer-ownership="none"> + <type name="gint" c:type="const int*"/> + </parameter> + <parameter name="coords_length" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="font_set_var_named_instance" + c:identifier="hb_font_set_var_named_instance" + version="2.6.0"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1950">Sets design coords of a font from a named instance index.</doc> + <source-position filename="../src/hb-font.h" line="724"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1952">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="instance_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1953">named instance index.</doc> + <type name="guint" c:type="unsigned"/> + </parameter> + </parameters> + </function> + <function name="font_set_variations" + c:identifier="hb_font_set_variations" + version="1.4.2"> + <source-position filename="../src/hb-font.h" line="699"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="variations" transfer-ownership="none"> + <type name="variation_t" c:type="const hb_variation_t*"/> + </parameter> + <parameter name="variations_length" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="font_subtract_glyph_origin_for_direction" + c:identifier="hb_font_subtract_glyph_origin_for_direction" + version="0.9.2"> + <source-position filename="../src/hb-font.h" line="563"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="1187">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="x" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + <parameter name="y" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + </parameters> + </function> + <record name="font_t" + c:type="hb_font_t" + glib:type-name="hb_font_t" + glib:get-type="hb_gobject_font_get_type" + c:symbol-prefix="gobject_font"> + <source-position filename="../src/hb-font.h" line="41"/> + </record> + <function name="ft_face_create" + c:identifier="hb_ft_face_create" + version="0.9.2" + introspectable="0"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="661">Creates an #hb_face_t face object from the specified FT_Face. + +This variant of the function does not provide any life-cycle management. + +Most client programs should use hb_ft_face_create_referenced() +(or, perhaps, hb_ft_face_create_cached()) instead. + +If you know you have valid reasons not to use hb_ft_face_create_referenced(), +then it is the client program's responsibility to destroy @ft_face +after the #hb_face_t face object has been destroyed.</doc> + <source-position filename="../src/hb-ft.h" line="63"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="677">the new #hb_face_t face object</doc> + <type name="face_t" c:type="hb_face_t*"/> + </return-value> + <parameters> + <parameter name="ft_face" + transfer-ownership="none" + scope="notified" + destroy="1"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="663">FT_Face to work upon</doc> + <type c:type="FT_Face"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="664">A callback to call when the face object is not needed anymore</doc> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="ft_face_create_cached" + c:identifier="hb_ft_face_create_cached" + version="0.9.2" + introspectable="0"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="737">Creates an #hb_face_t face object from the specified FT_Face. + +This variant of the function caches the newly created #hb_face_t +face object, using the @generic pointer of @ft_face. Subsequent function +calls that are passed the same @ft_face parameter will have the same +#hb_face_t returned to them, and that #hb_face_t will be correctly +reference counted. + +However, client programs are still responsible for destroying +@ft_face after the last #hb_face_t face object has been destroyed.</doc> + <source-position filename="../src/hb-ft.h" line="75"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="752">the new #hb_face_t face object</doc> + <type name="face_t" c:type="hb_face_t*"/> + </return-value> + <parameters> + <parameter name="ft_face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="739">FT_Face to work upon</doc> + <type c:type="FT_Face"/> + </parameter> + </parameters> + </function> + <function name="ft_face_create_referenced" + c:identifier="hb_ft_face_create_referenced" + version="0.9.38" + introspectable="0"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="706">Creates an #hb_face_t face object from the specified FT_Face. + +This is the preferred variant of the hb_ft_face_create* +function family, because it calls FT_Reference_Face() on @ft_face, +ensuring that @ft_face remains alive as long as the resulting +#hb_face_t face object remains alive. Also calls FT_Done_Face() +when the #hb_face_t face object is destroyed. + +Use this version unless you know you have good reasons not to.</doc> + <source-position filename="../src/hb-ft.h" line="85"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="720">the new #hb_face_t face object</doc> + <type name="face_t" c:type="hb_face_t*"/> + </return-value> + <parameters> + <parameter name="ft_face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="708">FT_Face to work upon</doc> + <type c:type="FT_Face"/> + </parameter> + </parameters> + </function> + <function name="ft_font_changed" c:identifier="hb_ft_font_changed"> + <source-position filename="../src/hb-ft.h" line="127"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="ft_font_create" + c:identifier="hb_ft_font_create" + version="0.9.2" + introspectable="0"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="771">Creates an #hb_font_t font object from the specified FT_Face. + +<note>Note: You must set the face size on @ft_face before calling +hb_ft_font_create() on it. Otherwise, HarfBuzz will not pick up +the face size.</note> + +This variant of the function does not provide any life-cycle management. + +Most client programs should use hb_ft_font_create_referenced() +instead. + +If you know you have valid reasons not to use hb_ft_font_create_referenced(), +then it is the client program's responsibility to destroy @ft_face +after the #hb_font_t font object has been destroyed. + +HarfBuzz will use the @destroy callback on the #hb_font_t font object +if it is supplied when you use this function. However, even if @destroy +is provided, it is the client program's responsibility to destroy @ft_face, +and it is the client program's responsibility to ensure that @ft_face is +destroyed only after the #hb_font_t font object has been destroyed.</doc> + <source-position filename="../src/hb-ft.h" line="102"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="797">the new #hb_font_t font object</doc> + <type name="font_t" c:type="hb_font_t*"/> + </return-value> + <parameters> + <parameter name="ft_face" + transfer-ownership="none" + scope="notified" + destroy="1"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="773">FT_Face to work upon</doc> + <type c:type="FT_Face"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="774">A callback to call when the font object is not needed anymore</doc> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="ft_font_create_referenced" + c:identifier="hb_ft_font_create_referenced" + version="0.9.38" + introspectable="0"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="880">Creates an #hb_font_t font object from the specified FT_Face. + +<note>Note: You must set the face size on @ft_face before calling +hb_ft_font_create_references() on it. Otherwise, HarfBuzz will not pick up +the face size.</note> + +This is the preferred variant of the hb_ft_font_create* +function family, because it calls FT_Reference_Face() on @ft_face, +ensuring that @ft_face remains alive as long as the resulting +#hb_font_t font object remains alive. + +Use this version unless you know you have good reasons not to.</doc> + <source-position filename="../src/hb-ft.h" line="108"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="897">the new #hb_font_t font object</doc> + <type name="font_t" c:type="hb_font_t*"/> + </return-value> + <parameters> + <parameter name="ft_face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="882">FT_Face to work upon</doc> + <type c:type="FT_Face"/> + </parameter> + </parameters> + </function> + <function name="ft_font_get_face" + c:identifier="hb_ft_font_get_face" + introspectable="0"> + <source-position filename="../src/hb-ft.h" line="111"/> + <return-value> + <type c:type="FT_Face"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="ft_font_get_load_flags" + c:identifier="hb_ft_font_get_load_flags" + version="1.0.5"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="157">Fetches the FT_Load_Glyph load flags of the specified #hb_font_t. + +For more information, see +https://www.freetype.org/freetype2/docs/reference/ft2-base_interface.html#ft_load_xxx</doc> + <source-position filename="../src/hb-ft.h" line="123"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="166">FT_Load_Glyph flags found</doc> + <type name="gint" c:type="int"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="159">#hb_font_t to work upon</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="ft_font_lock_face" + c:identifier="hb_ft_font_lock_face" + version="2.6.5" + introspectable="0"> + <source-position filename="../src/hb-ft.h" line="114"/> + <return-value> + <type c:type="FT_Face"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="ft_font_set_funcs" + c:identifier="hb_ft_font_set_funcs" + version="1.0.5"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="957">Configures the font-functions structure of the specified +#hb_font_t font object to use FreeType font functions. + +In particular, you can use this function to configure an +existing #hb_face_t face object for use with FreeType font +functions even if that #hb_face_t face object was initially +created with hb_face_create(), and therefore was not +initially configured to use FreeType font functions. + +An #hb_face_t face object created with hb_ft_face_create() +is preconfigured for FreeType font functions and does not +require this function to be used. + +<note>Note: Internally, this function creates an FT_Face. +</note></doc> + <source-position filename="../src/hb-ft.h" line="133"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="959">#hb_font_t to work upon</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="ft_font_set_load_flags" + c:identifier="hb_ft_font_set_load_flags" + version="1.0.5"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="131">Sets the FT_Load_Glyph load flags for the specified #hb_font_t. + +For more information, see +https://www.freetype.org/freetype2/docs/reference/ft2-base_interface.html#ft_load_xxx</doc> + <source-position filename="../src/hb-ft.h" line="120"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="133">#hb_font_t to work upon</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="load_flags" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="134">The FreeType load flags to set</doc> + <type name="gint" c:type="int"/> + </parameter> + </parameters> + </function> + <function name="ft_font_unlock_face" + c:identifier="hb_ft_font_unlock_face" + version="2.6.5"> + <source-position filename="../src/hb-ft.h" line="117"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <function name="glib_blob_create" + c:identifier="hb_glib_blob_create" + version="0.9.38"> + <doc xml:space="preserve" + filename="../src/hb-glib.cc" + line="282">Creates an #hb_blob_t blob from the specified +GBytes data structure.</doc> + <source-position filename="../src/hb-glib.h" line="51"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-glib.cc" + line="289">the new #hb_blob_t blob object</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + <parameters> + <parameter name="gbytes" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-glib.cc" + line="284">the GBytes structure to work upon</doc> + <type name="GLib.Bytes" c:type="GBytes*"/> + </parameter> + </parameters> + </function> + <function name="glib_get_unicode_funcs" + c:identifier="hb_glib_get_unicode_funcs" + version="0.9.38"> + <doc xml:space="preserve" + filename="../src/hb-glib.cc" + line="256">Fetches a Unicode-functions structure that is populated +with the appropriate GLib function for each method.</doc> + <source-position filename="../src/hb-glib.h" line="47"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-glib.cc" + line="262">a pointer to the #hb_unicode_funcs_t Unicode-functions structure</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </return-value> + </function> + <function name="glib_script_from_script" + c:identifier="hb_glib_script_from_script" + version="0.9.38"> + <doc xml:space="preserve" + filename="../src/hb-glib.cc" + line="69">Fetches the GUnicodeScript identifier that corresponds to the +specified #hb_script_t script.</doc> + <source-position filename="../src/hb-glib.h" line="43"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-glib.cc" + line="76">the GUnicodeScript identifier found</doc> + <type name="GLib.UnicodeScript" c:type="GUnicodeScript"/> + </return-value> + <parameters> + <parameter name="script" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-glib.cc" + line="71">The #hb_script_t to query</doc> + <type name="script_t" c:type="hb_script_t"/> + </parameter> + </parameters> + </function> + <function name="glib_script_to_script" + c:identifier="hb_glib_script_to_script" + version="0.9.38"> + <doc xml:space="preserve" + filename="../src/hb-glib.cc" + line="52">Fetches the #hb_script_t script that corresponds to the +specified GUnicodeScript identifier.</doc> + <source-position filename="../src/hb-glib.h" line="40"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-glib.cc" + line="59">the #hb_script_t script found</doc> + <type name="script_t" c:type="hb_script_t"/> + </return-value> + <parameters> + <parameter name="script" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-glib.cc" + line="54">The GUnicodeScript identifier to query</doc> + <type name="GLib.UnicodeScript" c:type="GUnicodeScript"/> + </parameter> + </parameters> + </function> + <record name="glyph_extents_t" c:type="hb_glyph_extents_t"> + <source-position filename="../src/hb-font.h" line="109"/> + <field name="x_bearing" writable="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="y_bearing" writable="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="width" writable="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="height" writable="1"> + <type name="position_t" c:type="hb_position_t"/> + </field> + </record> + <bitfield name="glyph_flags_t" + version="1.5.0" + glib:type-name="hb_glyph_flags_t" + glib:get-type="hb_gobject_glyph_flags_get_type" + c:type="hb_glyph_flags_t"> + <member name="unsafe_to_break" + value="1" + c:identifier="HB_GLYPH_FLAG_UNSAFE_TO_BREAK" + glib:nick="unsafe-to-break"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="77">Indicates that if input text is broken at the + beginning of the cluster this glyph is part of, + then both sides need to be re-shaped, as the + result might be different. On the flip side, + it means that when this flag is not present, + then it's safe to break the glyph-run at the + beginning of this cluster, and the two sides + represent the exact same result one would get + if breaking input text at the beginning of + this cluster and shaping the two sides + separately. This can be used to optimize + paragraph layout, by avoiding re-shaping + of each line after line-breaking, or limiting + the reshaping to a small piece around the + breaking point only.</doc> + </member> + <member name="defined" + value="1" + c:identifier="HB_GLYPH_FLAG_DEFINED" + glib:nick="defined"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="92">All the currently defined flags.</doc> + </member> + </bitfield> + <function name="glyph_info_get_glyph_flags" + c:identifier="hb_glyph_info_get_glyph_flags" + version="1.5.0"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1407">Returns glyph flags encoded within a #hb_glyph_info_t.</doc> + <source-position filename="../src/hb-buffer.h" line="103"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1413">The #hb_glyph_flags_t encoded within @info.</doc> + <type name="glyph_flags_t" c:type="hb_glyph_flags_t"/> + </return-value> + <parameters> + <parameter name="info" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="1409">a #hb_glyph_info_t.</doc> + <type name="glyph_info_t" c:type="const hb_glyph_info_t*"/> + </parameter> + </parameters> + </function> + <record name="glyph_info_t" + c:type="hb_glyph_info_t" + glib:type-name="hb_glyph_info_t" + glib:get-type="hb_gobject_glyph_info_get_type" + c:symbol-prefix="gobject_glyph_info"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="43">The #hb_glyph_info_t is the structure that holds information about the +glyphs and their relation to input text.</doc> + <source-position filename="../src/hb-buffer.h" line="73"/> + <field name="codepoint" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="45">either a Unicode code point (before shaping) or a glyph index + (after shaping).</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </field> + <field name="mask" readable="0" private="1"> + <type name="mask_t" c:type="hb_mask_t"/> + </field> + <field name="cluster" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="47">the index of the character in the original text that corresponds + to this #hb_glyph_info_t, or whatever the client passes to + hb_buffer_add(). More than one #hb_glyph_info_t can have the same + @cluster value, if they resulted from the same character (e.g. one + to many glyph substitution), and when more than one character gets + merged in the same glyph (e.g. many to one glyph substitution) the + #hb_glyph_info_t will have the smallest cluster value of them. + By default some characters are merged into the same cluster + (e.g. combining marks have the same cluster as their bases) + even if they are separate glyphs, hb_buffer_set_cluster_level() + allow selecting more fine-grained cluster handling.</doc> + <type name="guint32" c:type="uint32_t"/> + </field> + <field name="var1" readable="0" private="1"> + <type name="var_int_t" c:type="hb_var_int_t"/> + </field> + <field name="var2" readable="0" private="1"> + <type name="var_int_t" c:type="hb_var_int_t"/> + </field> + </record> + <record name="glyph_position_t" + c:type="hb_glyph_position_t" + glib:type-name="hb_glyph_position_t" + glib:get-type="hb_gobject_glyph_position_get_type" + c:symbol-prefix="gobject_glyph_position"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="109">The #hb_glyph_position_t is the structure that holds the positions of the +glyph in both horizontal and vertical directions. All positions in +#hb_glyph_position_t are relative to the current point.</doc> + <source-position filename="../src/hb-buffer.h" line="133"/> + <field name="x_advance" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="111">how much the line advances after drawing this glyph when setting + text in horizontal direction.</doc> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="y_advance" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="113">how much the line advances after drawing this glyph when setting + text in vertical direction.</doc> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="x_offset" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="115">how much the glyph moves on the X-axis before drawing it, this + should not affect how much the line advances.</doc> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="y_offset" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="117">how much the glyph moves on the Y-axis before drawing it, this + should not affect how much the line advances.</doc> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="var" readable="0" private="1"> + <type name="var_int_t" c:type="hb_var_int_t"/> + </field> + </record> + <function name="graphite2_face_get_gr_face" + c:identifier="hb_graphite2_face_get_gr_face" + version="0.9.10" + introspectable="0"> + <doc xml:space="preserve" + filename="../src/hb-graphite2.cc" + line="159">Fetches the Graphite2 gr_face corresponding to the specified +#hb_face_t face object.</doc> + <source-position filename="../src/hb-graphite2.h" line="48"/> + <return-value> + <doc xml:space="preserve" + filename="../src/hb-graphite2.cc" + line="166">the gr_face found</doc> + <type c:type="gr_face*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-graphite2.cc" + line="161">@hb_face_t to query</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="graphite2_font_get_gr_font" + c:identifier="hb_graphite2_font_get_gr_font" + version="0.9.10" + introspectable="0" + deprecated="1" + deprecated-version="1.4.2"> + <source-position filename="../src/hb-graphite2.h" line="53"/> + <return-value> + <type c:type="gr_font*"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <docsection name="hb-aat-layout"> + <doc xml:space="preserve" + filename="../src/hb-aat-layout.cc" + line="76">Functions for querying OpenType Layout features in the font face.</doc> + </docsection> + <docsection name="hb-blob"> + <doc xml:space="preserve" + filename="../src/hb-blob.cc" + line="42">Blobs wrap a chunk of binary data to handle lifecycle management of data +while it is passed between client and HarfBuzz. Blobs are primarily used +to create font faces, but also to access font face tables, as well as +pass around other binary data.</doc> + </docsection> + <docsection name="hb-buffer"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="34">Buffers serve dual role in HarfBuzz; they hold the input characters that are +passed to hb_shape(), and after shaping they hold the output glyphs.</doc> + </docsection> + <docsection name="hb-common"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="38">Common data types used across HarfBuzz are defined here.</doc> + </docsection> + <docsection name="hb-deprecated"> + <doc xml:space="preserve" + filename="../src/hb-deprecated.h" + line="40">These API have been deprecated in favor of newer API, or because they +were deemed unnecessary.</doc> + </docsection> + <docsection name="hb-face"> + <doc xml:space="preserve" + filename="../src/hb-face.cc" + line="38">Font face is objects represent a single face in a font family. +More exactly, a font face represents a single face in a binary font file. +Font faces are typically built from a binary blob and a face index. +Font faces are used to create fonts.</doc> + </docsection> + <docsection name="hb-font"> + <doc xml:space="preserve" + filename="../src/hb-font.cc" + line="40">Font objects represent a font face at a certain size and other +parameters (pixels per EM, points per EM, variation settings.) +Fonts are created from font faces, and are used as input to +hb_shape() among other things.</doc> + </docsection> + <docsection name="hb-ft"> + <doc xml:space="preserve" + filename="../src/hb-ft.cc" + line="45">Functions for using HarfBuzz with the FreeType library. + +HarfBuzz supports using FreeType to provide face and +font data. + +<note>Note that FreeType is not thread-safe, therefore these +functions are not thread-safe either.</note></doc> + </docsection> + <docsection name="hb-glib"> + <doc xml:space="preserve" + filename="../src/hb-glib.cc" + line="38">Functions for using HarfBuzz with the GLib library. + +HarfBuzz supports using GLib to provide Unicode data, by attaching +GLib functions to the virtual methods in a #hb_unicode_funcs_t function +structure.</doc> + </docsection> + <docsection name="hb-gobject"> + <doc xml:space="preserve" + filename="../src/hb-gobject-structs.cc" + line="32">Support for using HarfBuzz with the GObject library to provide +type data. + +The types and functions listed here are solely a linkage between +HarfBuzz's public data types and the GTypes used by the GObject framework. +HarfBuzz uses GObject introspection to generate its Python bindings +(and potentially other language bindings); client programs should never need +to access the GObject-integration mechanics. + +For client programs using the GNOME and GTK software stack, please see the +GLib and FreeType integration pages.</doc> + </docsection> + <docsection name="hb-graphite2"> + <doc xml:space="preserve" + filename="../src/hb-graphite2.cc" + line="42">Functions for using HarfBuzz with fonts that include Graphite features. + +For Graphite features to work, you must be sure that HarfBuzz was compiled +with the `graphite2` shaping engine enabled. Currently, the default is to +not enable `graphite2` shaping.</doc> + </docsection> + <docsection name="hb-map"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="30">Map objects are integer-to-integer hash-maps. Currently they are +not used in the HarfBuzz public API, but are provided for client's +use if desired.</doc> + </docsection> + <docsection name="hb-ot-color"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="44">Functions for fetching color-font information from OpenType font faces. + +HarfBuzz supports `COLR`/`CPAL`, `sbix`, `CBDT`, and `SVG` color fonts.</doc> + </docsection> + <docsection name="hb-ot-font"> + <doc xml:space="preserve" + filename="../src/hb-ot-font.cc" + line="50">Functions for using OpenType fonts with hb_shape(). Note that fonts returned +by hb_font_create() default to using these functions, so most clients would +never need to call these functions directly.</doc> + </docsection> + <docsection name="hb-ot-layout"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="57">Functions for querying OpenType Layout features in the font face.</doc> + </docsection> + <docsection name="hb-ot-math"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="34">Functions for fetching mathematics layout data from OpenType fonts. + +HarfBuzz itself does not implement a math layout solution. The +functions and types provided can be used by client programs to access +the font data necessary for typesetting OpenType Math layout.</doc> + </docsection> + <docsection name="hb-ot-meta"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.cc" + line="31">Functions for fetching metadata from fonts.</doc> + </docsection> + <docsection name="hb-ot-name"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="36">Functions for fetching name strings from OpenType fonts.</doc> + </docsection> + <docsection name="hb-ot-shape"> + <doc xml:space="preserve" + filename="../src/hb-ot-shape.cc" + line="61">Support functions for OpenType shaping related queries.</doc> + </docsection> + <docsection name="hb-ot-var"> + <doc xml:space="preserve" + filename="../src/hb-ot-var.cc" + line="38">Functions for fetching information about OpenType Variable Fonts.</doc> + </docsection> + <docsection name="hb-set"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="30">Set objects represent a mathematical set of integer values. They are +used in non-shaping API to query certain set of characters or glyphs, +or other integer values.</doc> + </docsection> + <docsection name="hb-shape"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="38">Shaping is the central operation of HarfBuzz. Shaping operates on buffers, +which are sequences of Unicode characters that use the same font and have +the same text direction, script, and language. After shaping the buffer +contains the output glyphs and their positions.</doc> + </docsection> + <docsection name="hb-shape-plan"> + <doc xml:space="preserve" + filename="../src/hb-shape-plan.cc" + line="34">Shape plans are not used for shaping directly, but can be access to query +certain information about how shaping will perform given a set of input +parameters (script, language, direction, features, etc.) +Most client would not need to deal with shape plans directly.</doc> + </docsection> + <docsection name="hb-unicode"> + <doc xml:space="preserve" + filename="../src/hb-unicode.cc" + line="36">Unicode functions are used to access Unicode character properties. +Client can pass its own Unicode functions to HarfBuzz, or access +the built-in Unicode functions that come with HarfBuzz. + +With the Unicode functions, one can query variour Unicode character +properties, such as General Category, Script, Combining Class, etc.</doc> + </docsection> + <docsection name="hb-version"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="602">These functions and macros allow accessing version of the HarfBuzz +library used at compile- as well as run-time, and to direct code +conditionally based on those versions, again, at compile- or run-time.</doc> + </docsection> + <function name="language_from_string" + c:identifier="hb_language_from_string" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="332">Converts @str representing a BCP 47 language tag to the corresponding +#hb_language_t.</doc> + <source-position filename="../src/hb-common.h" line="165"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="341"> +The #hb_language_t corresponding to the BCP 47 language tag.</doc> + <type name="language_t" c:type="hb_language_t"/> + </return-value> + <parameters> + <parameter name="str" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="334">a string representing + a BCP 47 language tag</doc> + <array length="1" zero-terminated="0" c:type="const char*"> + <type name="guint8"/> + </array> + </parameter> + <parameter name="len" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="336">length of the @str, or -1 if it is %NULL-terminated.</doc> + <type name="gint" c:type="int"/> + </parameter> + </parameters> + </function> + <function name="language_get_default" + c:identifier="hb_language_get_default" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="388">Get default language from current locale. + +Note that the first time this function is called, it calls +"setlocale (LC_CTYPE, nullptr)" to fetch current locale. The underlying +setlocale function is, in many implementations, NOT threadsafe. To avoid +problems, call this function once before multiple threads can call it. +This function is only used from hb_buffer_guess_segment_properties() by +HarfBuzz itself.</doc> + <source-position filename="../src/hb-common.h" line="173"/> + <return-value transfer-ownership="none"> + <type name="language_t" c:type="hb_language_t"/> + </return-value> + </function> + <record name="language_t" c:type="hb_language_t" disguised="1"> + <source-position filename="../src/hb-common.h" line="162"/> + <method name="_string" + c:identifier="hb_language_to_string" + moved-to="language_to_string" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="368">See hb_language_from_string().</doc> + <source-position filename="../src/hb-common.h" line="168"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="374"> +A %NULL-terminated string representing the @language. Must not be freed by +the caller.</doc> + <type name="utf8" c:type="const char*"/> + </return-value> + <parameters> + <instance-parameter name="language" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="370">an #hb_language_t to convert.</doc> + <type name="language_t" c:type="hb_language_t"/> + </instance-parameter> + </parameters> + </method> + </record> + <function name="language_to_string" + c:identifier="hb_language_to_string" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="368">See hb_language_from_string().</doc> + <source-position filename="../src/hb-common.h" line="168"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="374"> +A %NULL-terminated string representing the @language. Must not be freed by +the caller.</doc> + <type name="utf8" c:type="const char*"/> + </return-value> + <parameters> + <parameter name="language" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="370">an #hb_language_t to convert.</doc> + <type name="language_t" c:type="hb_language_t"/> + </parameter> + </parameters> + </function> + <function name="map_allocation_successful" + c:identifier="hb_map_allocation_successful" + version="1.7.7"> + <source-position filename="../src/hb-map.h" line="73"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="map" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="146">a map.</doc> + <type name="map_t" c:type="const hb_map_t*"/> + </parameter> + </parameters> + </function> + <function name="map_clear" c:identifier="hb_map_clear" version="1.7.7"> + <source-position filename="../src/hb-map.h" line="76"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="map" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="230">a map.</doc> + <type name="map_t" c:type="hb_map_t*"/> + </parameter> + </parameters> + </function> + <function name="map_create" c:identifier="hb_map_create" version="1.7.7"> + <source-position filename="../src/hb-map.h" line="48"/> + <return-value transfer-ownership="full"> + <type name="map_t" c:type="hb_map_t*"/> + </return-value> + </function> + <function name="map_del" c:identifier="hb_map_del" version="1.7.7"> + <source-position filename="../src/hb-map.h" line="94"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="map" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="197">a map.</doc> + <type name="map_t" c:type="hb_map_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="map_destroy" + c:identifier="hb_map_destroy" + version="1.7.7" + introspectable="0"> + <source-position filename="../src/hb-map.h" line="57"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="map" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="91">a map.</doc> + <type name="map_t" c:type="hb_map_t*"/> + </parameter> + </parameters> + </function> + <function name="map_get" c:identifier="hb_map_get" version="1.7.7"> + <source-position filename="../src/hb-map.h" line="90"/> + <return-value transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </return-value> + <parameters> + <parameter name="map" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="181">a map.</doc> + <type name="map_t" c:type="const hb_map_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="map_get_empty" + c:identifier="hb_map_get_empty" + version="1.7.7"> + <source-position filename="../src/hb-map.h" line="51"/> + <return-value transfer-ownership="full"> + <type name="map_t" c:type="hb_map_t*"/> + </return-value> + </function> + <function name="map_get_population" + c:identifier="hb_map_get_population" + version="1.7.7"> + <source-position filename="../src/hb-map.h" line="82"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="map" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="258">a map.</doc> + <type name="map_t" c:type="const hb_map_t*"/> + </parameter> + </parameters> + </function> + <function name="map_get_user_data" + c:identifier="hb_map_get_user_data" + version="1.7.7" + introspectable="0"> + <source-position filename="../src/hb-map.h" line="67"/> + <return-value transfer-ownership="none" nullable="1"> + <type name="gpointer" c:type="void*"/> + </return-value> + <parameters> + <parameter name="map" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="129">a map.</doc> + <type name="map_t" c:type="hb_map_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + </parameters> + </function> + <function name="map_has" c:identifier="hb_map_has" version="1.7.7"> + <source-position filename="../src/hb-map.h" line="98"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="map" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="213">a map.</doc> + <type name="map_t" c:type="const hb_map_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="map_is_empty" + c:identifier="hb_map_is_empty" + version="1.7.7"> + <source-position filename="../src/hb-map.h" line="79"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="map" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="244">a map.</doc> + <type name="map_t" c:type="const hb_map_t*"/> + </parameter> + </parameters> + </function> + <function name="map_reference" + c:identifier="hb_map_reference" + version="1.7.7" + introspectable="0"> + <source-position filename="../src/hb-map.h" line="54"/> + <return-value transfer-ownership="full"> + <type name="map_t" c:type="hb_map_t*"/> + </return-value> + <parameters> + <parameter name="map" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="77">a map.</doc> + <type name="map_t" c:type="hb_map_t*"/> + </parameter> + </parameters> + </function> + <function name="map_set" c:identifier="hb_map_set" version="1.7.7"> + <source-position filename="../src/hb-map.h" line="85"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="map" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="163">a map.</doc> + <type name="map_t" c:type="hb_map_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="value" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="map_set_user_data" + c:identifier="hb_map_set_user_data" + version="1.7.7" + introspectable="0"> + <source-position filename="../src/hb-map.h" line="60"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="map" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-map.cc" + line="107">a map.</doc> + <type name="map_t" c:type="hb_map_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + <parameter name="data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + <parameter name="replace" transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </parameter> + </parameters> + </function> + <record name="map_t" + c:type="hb_map_t" + glib:type-name="hb_map_t" + glib:get-type="hb_gobject_map_get_type" + c:symbol-prefix="gobject_map"> + <source-position filename="../src/hb-map.h" line="44"/> + </record> + <enumeration name="memory_mode_t" + glib:type-name="hb_memory_mode_t" + glib:get-type="hb_gobject_memory_mode_get_type" + c:type="hb_memory_mode_t"> + <member name="duplicate" + value="0" + c:identifier="HB_MEMORY_MODE_DUPLICATE" + glib:nick="duplicate"> + </member> + <member name="readonly" + value="1" + c:identifier="HB_MEMORY_MODE_READONLY" + glib:nick="readonly"> + </member> + <member name="writable" + value="2" + c:identifier="HB_MEMORY_MODE_WRITABLE" + glib:nick="writable"> + </member> + <member name="readonly_may_make_writable" + value="3" + c:identifier="HB_MEMORY_MODE_READONLY_MAY_MAKE_WRITABLE" + glib:nick="readonly-may-make-writable"> + </member> + </enumeration> + <function name="ot_color_glyph_get_layers" + c:identifier="hb_ot_color_glyph_get_layers" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="208">Fetches a list of all color layers for the specified glyph index in the specified +face. The list returned will begin at the offset provided.</doc> + <source-position filename="../src/hb-ot-color.h" line="110"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="220">Total number of layers available for the glyph index queried</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="210">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="211">The glyph index to query</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="212">offset of the first layer to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="layer_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + optional="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="213">Input = the maximum number of layers to return; + Output = the actual number of layers returned (may be zero)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="layers" + direction="out" + caller-allocates="1" + transfer-ownership="none" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="215">The array of layers found</doc> + <array length="3" zero-terminated="0" c:type="hb_ot_color_layer_t*"> + <type name="ot_color_layer_t" c:type="hb_ot_color_layer_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_color_glyph_reference_png" + c:identifier="hb_ot_color_glyph_reference_png" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="293">Fetches the PNG image for a glyph. This function takes a font object, not a face object, +as input. To get an optimally sized PNG blob, the UPEM value must be set on the @font +object. If UPEM is unset, the blob returned will be the largest PNG available.</doc> + <source-position filename="../src/hb-ot-color.h" line="134"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="302">An #hb_blob_t containing the PNG image for the glyph, if available</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="295">#hb_font_t to work upon</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="296">a glyph index</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="ot_color_glyph_reference_svg" + c:identifier="hb_ot_color_glyph_reference_svg" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="255">Fetches the SVG document for a glyph. The blob may be either plain text or gzip-encoded.</doc> + <source-position filename="../src/hb-ot-color.h" line="124"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="262">An #hb_blob_t containing the SVG document of the glyph, if available</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="257">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="258">a svg glyph index</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="ot_color_has_layers" + c:identifier="hb_ot_color_has_layers" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="192">Tests whether a face includes any `COLR` color layers.</doc> + <source-position filename="../src/hb-ot-color.h" line="94"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="198">true if data found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="194">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_color_has_palettes" + c:identifier="hb_ot_color_has_palettes" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="61">Tests whether a face includes a `CPAL` color-palette table.</doc> + <source-position filename="../src/hb-ot-color.h" line="47"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="67">true if data found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="63">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_color_has_png" + c:identifier="hb_ot_color_has_png" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="277">Tests whether a face has PNG glyph images (either in `CBDT` or `sbix` tables).</doc> + <source-position filename="../src/hb-ot-color.h" line="131"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="283">true if data found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="279">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_color_has_svg" + c:identifier="hb_ot_color_has_svg" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="239">Tests whether a face includes any `SVG` glyph images.</doc> + <source-position filename="../src/hb-ot-color.h" line="121"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="245">true if data found, false otherwise.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="241">#hb_face_t to work upon.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <record name="ot_color_layer_t" + c:type="hb_ot_color_layer_t" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.h" + line="96">Pairs of glyph and color index.</doc> + <source-position filename="../src/hb-ot-color.h" line="107"/> + <field name="glyph" writable="1"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </field> + <field name="color_index" writable="1"> + <type name="guint" c:type="unsigned int"/> + </field> + </record> + <function name="ot_color_palette_color_get_name_id" + c:identifier="hb_ot_color_palette_color_get_name_id" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="116">Fetches the `name` table Name ID that provides display names for +the specificed color in a face's `CPAL` color palette. + +Display names can be generic (e.g., "Background") or specific +(e.g., "Eye color").</doc> + <source-position filename="../src/hb-ot-color.h" line="57"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="127">the Name ID found for the color.</doc> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="118">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="color_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="119">The index of the color</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <bitfield name="ot_color_palette_flags_t" + version="2.1.0" + glib:type-name="hb_ot_color_palette_flags_t" + glib:get-type="hb_gobject_ot_color_palette_flags_get_type" + c:type="hb_ot_color_palette_flags_t"> + <member name="default" + value="0" + c:identifier="HB_OT_COLOR_PALETTE_FLAG_DEFAULT" + glib:nick="default"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.h" + line="62">Default indicating that there is nothing special + to note about a color palette.</doc> + </member> + <member name="usable_with_light_background" + value="1" + c:identifier="HB_OT_COLOR_PALETTE_FLAG_USABLE_WITH_LIGHT_BACKGROUND" + glib:nick="usable-with-light-background"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.h" + line="64">Flag indicating that the color + palette is appropriate to use when displaying the font on a light background such as white.</doc> + </member> + <member name="usable_with_dark_background" + value="2" + c:identifier="HB_OT_COLOR_PALETTE_FLAG_USABLE_WITH_DARK_BACKGROUND" + glib:nick="usable-with-dark-background"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.h" + line="66">Flag indicating that the color + palette is appropriate to use when displaying the font on a dark background such as black.</doc> + </member> + </bitfield> + <function name="ot_color_palette_get_colors" + c:identifier="hb_ot_color_palette_get_colors" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="156">Fetches a list of the colors in a color palette. + +After calling this function, @colors will be filled with the palette +colors. If @colors is NULL, the function will just return the number +of total colors without storing any actual colors; this can be used +for allocating a buffer of suitable size before calling +hb_ot_color_palette_get_colors() a second time.</doc> + <source-position filename="../src/hb-ot-color.h" line="82"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="173">the total number of colors in the palette</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="158">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="palette_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="159">the index of the color palette to query</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="160">offset of the first color to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="color_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + optional="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="161">Input = the maximum number of colors to return; + Output = the actual number of colors returned (may be zero)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="colors" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="163">The array of #hb_color_t records found</doc> + <array length="3" zero-terminated="0" c:type="hb_color_t*"> + <type name="color_t" c:type="hb_color_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_color_palette_get_count" + c:identifier="hb_ot_color_palette_get_count" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="77">Fetches the number of color palettes in a face.</doc> + <source-position filename="../src/hb-ot-color.h" line="50"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="83">the number of palettes found</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="79">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_color_palette_get_flags" + c:identifier="hb_ot_color_palette_get_flags" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="138">Fetches the flags defined for a color palette.</doc> + <source-position filename="../src/hb-ot-color.h" line="78"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="145">the #hb_ot_color_palette_flags_t of the requested color palette</doc> + <type name="ot_color_palette_flags_t" + c:type="hb_ot_color_palette_flags_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="140">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="palette_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="141">The index of the color palette</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="ot_color_palette_get_name_id" + c:identifier="hb_ot_color_palette_get_name_id" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="93">Fetches the `name` table Name ID that provides display names for +a `CPAL` color palette. + +Palette display names can be generic (e.g., "Default") or provide +specific, themed names (e.g., "Spring", "Summer", "Fall", and "Winter").</doc> + <source-position filename="../src/hb-ot-color.h" line="53"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="104">the Named ID found for the palette. +If the requested palette has no name the result is #HB_OT_NAME_ID_INVALID.</doc> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="95">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="palette_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-color.cc" + line="96">The index of the color palette</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="ot_font_set_funcs" + c:identifier="hb_ot_font_set_funcs" + version="0.9.28"> + <source-position filename="../src/hb-ot-font.h" line="40"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + </parameters> + </function> + <enumeration name="ot_layout_baseline_tag_t" + version="2.6.0" + glib:type-name="hb_ot_layout_baseline_tag_t" + glib:get-type="hb_gobject_ot_layout_baseline_tag_get_type" + c:type="hb_ot_layout_baseline_tag_t"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="416">Baseline tags from https://docs.microsoft.com/en-us/typography/opentype/spec/baselinetags</doc> + <member name="roman" + value="1919905134" + c:identifier="HB_OT_LAYOUT_BASELINE_TAG_ROMAN" + glib:nick="roman"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="418">The baseline used by alphabetic scripts such as Latin, Cyrillic and Greek. +In vertical writing mode, the alphabetic baseline for characters rotated 90 degrees clockwise. +(This would not apply to alphabetic characters that remain upright in vertical writing mode, since these +characters are not rotated.)</doc> + </member> + <member name="hanging" + value="1751215719" + c:identifier="HB_OT_LAYOUT_BASELINE_TAG_HANGING" + glib:nick="hanging"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="422">The hanging baseline. In horizontal direction, this is the horizontal +line from which syllables seem, to hang in Tibetan and other similar scripts. In vertical writing mode, +for Tibetan (or some other similar script) characters rotated 90 degrees clockwise.</doc> + </member> + <member name="ideo_face_bottom_or_left" + value="1768121954" + c:identifier="HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_BOTTOM_OR_LEFT" + glib:nick="ideo-face-bottom-or-left"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="425">Ideographic character face bottom or left edge, +if the direction is horizontal or vertical, respectively.</doc> + </member> + <member name="ideo_face_top_or_right" + value="1768121972" + c:identifier="HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_TOP_OR_RIGHT" + glib:nick="ideo-face-top-or-right"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="427">Ideographic character face top or right edge, +if the direction is horizontal or vertical, respectively.</doc> + </member> + <member name="ideo_embox_bottom_or_left" + value="1768187247" + c:identifier="HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_BOTTOM_OR_LEFT" + glib:nick="ideo-embox-bottom-or-left"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="429">Ideographic em-box bottom or left edge, +if the direction is horizontal or vertical, respectively.</doc> + </member> + <member name="ideo_embox_top_or_right" + value="1768191088" + c:identifier="HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_TOP_OR_RIGHT" + glib:nick="ideo-embox-top-or-right"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="431">Ideographic em-box top or right edge baseline, +if the direction is horizontal or vertical, respectively.</doc> + </member> + <member name="math" + value="1835103336" + c:identifier="HB_OT_LAYOUT_BASELINE_TAG_MATH" + glib:nick="math"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="433">The baseline about which mathematical characters are centered. +In vertical writing mode when mathematical characters rotated 90 degrees clockwise, are centered.</doc> + </member> + </enumeration> + <function name="ot_layout_collect_features" + c:identifier="hb_ot_layout_collect_features" + version="1.8.5"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1101">Fetches a list of all feature indexes in the specified face's GSUB table +or GPOS table, underneath the specified scripts, languages, and features. +If no list of scripts is provided, all scripts will be queried. If no list +of languages is provided, all languages will be queried. If no list of +features is provided, all features will be queried.</doc> + <source-position filename="../src/hb-ot-layout.h" line="250"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1103">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1104">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="scripts" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1105">The array of scripts to collect features for</doc> + <type name="tag_t" c:type="const hb_tag_t*"/> + </parameter> + <parameter name="languages" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1106">The array of languages to collect features for</doc> + <type name="tag_t" c:type="const hb_tag_t*"/> + </parameter> + <parameter name="features" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1107">The array of features to collect</doc> + <type name="tag_t" c:type="const hb_tag_t*"/> + </parameter> + <parameter name="feature_indexes" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1108">The array of feature indexes found for the query</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_collect_lookups" + c:identifier="hb_ot_layout_collect_lookups" + version="0.9.8"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1152">Fetches a list of all feature-lookup indexes in the specified face's GSUB +table or GPOS table, underneath the specified scripts, languages, and +features. If no list of scripts is provided, all scripts will be queried. +If no list of languages is provided, all languages will be queried. If no +list of features is provided, all features will be queried.</doc> + <source-position filename="../src/hb-ot-layout.h" line="258"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1154">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1155">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="scripts" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1156">The array of scripts to collect lookups for</doc> + <type name="tag_t" c:type="const hb_tag_t*"/> + </parameter> + <parameter name="languages" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1157">The array of languages to collect lookups for</doc> + <type name="tag_t" c:type="const hb_tag_t*"/> + </parameter> + <parameter name="features" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1158">The array of features to collect lookups for</doc> + <type name="tag_t" c:type="const hb_tag_t*"/> + </parameter> + <parameter name="lookup_indexes" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1159">The array of lookup indexes found for the query</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_feature_get_characters" + c:identifier="hb_ot_layout_feature_get_characters" + version="2.0.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1682">Fetches a list of the characters defined as having a variant under the specified +"Character Variant" ("cvXX") feature tag.</doc> + <source-position filename="../src/hb-ot-layout.h" line="405"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1697">Number of total sample characters in the cvXX feature.</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1684">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1685">table tag to query, "GSUB" or "GPOS".</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="feature_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1686">index of feature to query.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1687">offset of the first character to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="char_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1688">Input = the maximum number of characters to return; + Output = the actual number of characters returned (may be zero)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="characters" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1690">A buffer pointer. + The Unicode codepoints of the characters for which this feature provides + glyph variants.</doc> + <array length="4" zero-terminated="0" c:type="hb_codepoint_t*"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_layout_feature_get_lookups" + c:identifier="hb_ot_layout_feature_get_lookups" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="910">Fetches a list of all lookups enumerated for the specified feature, in +the specified face's GSUB table or GPOS table. The list returned will +begin at the offset provided.</doc> + <source-position filename="../src/hb-ot-layout.h" line="238"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="912">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="913">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="feature_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="914">The index of the requested feature</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="915">offset of the first lookup to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="lookup_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="916">Input = the maximum number of lookups to return; + Output = the actual number of lookups returned (may be zero)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="lookup_indexes" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="918">The array of lookup indexes found for the query</doc> + <array length="4" zero-terminated="0" c:type="unsigned int*"> + <type name="guint" c:type="unsigned int"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_layout_feature_get_name_ids" + c:identifier="hb_ot_layout_feature_get_name_ids" + version="2.0.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1608">Fetches name indices from feature parameters for "Stylistic Set" ('ssXX') or +"Character Variant" ('cvXX') features.</doc> + <source-position filename="../src/hb-ot-layout.h" line="394"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1628">true if data found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1610">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1611">table tag to query, "GSUB" or "GPOS".</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="feature_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1612">index of feature to query.</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="label_id" + direction="out" + caller-allocates="0" + transfer-ownership="full" + optional="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1613">The ‘name’ table name ID that specifies a string + for a user-interface label for this feature. (May be NULL.)</doc> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t*"/> + </parameter> + <parameter name="tooltip_id" + direction="out" + caller-allocates="0" + transfer-ownership="full" + optional="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1615">The ‘name’ table name ID that specifies a string + that an application can use for tooltip text for this + feature. (May be NULL.)</doc> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t*"/> + </parameter> + <parameter name="sample_id" + direction="out" + caller-allocates="0" + transfer-ownership="full" + optional="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1618">The ‘name’ table name ID that specifies sample text + that illustrates the effect of this feature. (May be NULL.)</doc> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t*"/> + </parameter> + <parameter name="num_named_parameters" + direction="out" + caller-allocates="0" + transfer-ownership="full" + optional="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1620">Number of named parameters. (May be zero.)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="first_param_id" + direction="out" + caller-allocates="0" + transfer-ownership="full" + optional="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1621">The first ‘name’ table name ID used to specify + strings for user-interface labels for the feature + parameters. (Must be zero if numParameters is zero.)</doc> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_feature_with_variations_get_lookups" + c:identifier="hb_ot_layout_feature_with_variations_get_lookups"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1268">Fetches a list of all lookups enumerated for the specified feature, in +the specified face's GSUB table or GPOS table, enabled at the specified +variations index. The list returned will begin at the offset provided.</doc> + <source-position filename="../src/hb-ot-layout.h" line="310"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1270">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1271">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="feature_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1272">The index of the feature to query</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="variations_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1273">The index of the feature variation to query</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1274">offset of the first lookup to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="lookup_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1275">Input = the maximum number of lookups to return; + Output = the actual number of lookups returned (may be zero)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="lookup_indexes" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1277">The array of lookups found for the query</doc> + <array length="5" zero-terminated="0" c:type="unsigned int*"> + <type name="guint" c:type="unsigned int"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_layout_get_attach_points" + c:identifier="hb_ot_layout_get_attach_points"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="320">Fetches a list of all attachment points for the specified glyph in the GDEF +table of the face. The list returned will begin at the offset provided. + +Useful if the client program wishes to cache the list.</doc> + <source-position filename="../src/hb-ot-layout.h" line="127"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="322">The #hb_face_t to work on</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="323">The #hb_codepoint_t code point to query</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="324">offset of the first attachment point to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="point_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="325">Input = the maximum number of attachment points to return; + Output = the actual number of attachment points returned (may be zero)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="point_array" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="327">The array of attachment points found for the query</doc> + <array length="3" zero-terminated="0" c:type="unsigned int*"> + <type name="guint" c:type="unsigned int"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_layout_get_baseline" + c:identifier="hb_ot_layout_get_baseline" + version="2.6.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1904">Fetches a baseline value from the face.</doc> + <source-position filename="../src/hb-ot-layout.h" line="453"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1915">if found baseline value in the font.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1906">a font</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="baseline_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1907">a baseline tag</doc> + <type name="ot_layout_baseline_tag_t" + c:type="hb_ot_layout_baseline_tag_t"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1908">text direction.</doc> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="script_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1909">script tag.</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="language_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1910">language tag.</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="coord" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1911">baseline value if found.</doc> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_get_glyph_class" + c:identifier="hb_ot_layout_get_glyph_class" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="280">Fetches the GDEF class of the requested glyph in the specified face.</doc> + <source-position filename="../src/hb-ot-layout.h" line="116"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="287">The #hb_ot_layout_glyph_class_t glyph class of the given code +point in the GDEF table of the face.</doc> + <type name="ot_layout_glyph_class_t" + c:type="hb_ot_layout_glyph_class_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="282">The #hb_face_t to work on</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="283">The #hb_codepoint_t code point to query</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_get_glyphs_in_class" + c:identifier="hb_ot_layout_get_glyphs_in_class" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="299">Retrieves the set of all glyphs from the face that belong to the requested +glyph class in the face's GDEF table.</doc> + <source-position filename="../src/hb-ot-layout.h" line="120"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="301">The #hb_face_t to work on</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="klass" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="302">The #hb_ot_layout_glyph_class_t GDEF class to retrieve</doc> + <type name="ot_layout_glyph_class_t" + c:type="hb_ot_layout_glyph_class_t"/> + </parameter> + <parameter name="glyphs" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="303">The #hb_set_t set of all glyphs belonging to the requested + class.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_get_ligature_carets" + c:identifier="hb_ot_layout_get_ligature_carets"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="347">Fetches a list of the caret positions defined for a ligature glyph in the GDEF +table of the font. The list returned will begin at the offset provided.</doc> + <source-position filename="../src/hb-ot-layout.h" line="135"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="349">The #hb_font_t to work on</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="350">The #hb_direction_t text direction to use</doc> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="351">The #hb_codepoint_t code point to query</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="352">offset of the first caret position to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="caret_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="353">Input = the maximum number of caret positions to return; + Output = the actual number of caret positions returned (may be zero)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="caret_array" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="355">The array of caret positions found for the query</doc> + <array length="4" zero-terminated="0" c:type="hb_position_t*"> + <type name="position_t" c:type="hb_position_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_layout_get_size_params" + c:identifier="hb_ot_layout_get_size_params" + version="0.9.10"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1546">Fetches optical-size feature data (i.e., the `size` feature from GPOS). Note that +the subfamily_id and the subfamily name string (accessible via the subfamily_name_id) +as used here are defined as pertaining only to fonts within a font family that differ +specifically in their respective size ranges; other ways to differentiate fonts within +a subfamily are not covered by the `size` feature. + +For more information on this distinction, see the [`size` feature documentation]( +https://docs.microsoft.com/en-us/typography/opentype/spec/features_pt#tag-size).</doc> + <source-position filename="../src/hb-ot-layout.h" line="385"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1564">true if data found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1548">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="design_size" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1549">The design size of the face</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="subfamily_id" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1550">The identifier of the face within the font subfamily</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="subfamily_name_id" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1551">The ‘name’ table name ID of the face within the font subfamily</doc> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t*"/> + </parameter> + <parameter name="range_start" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1552">The minimum size of the recommended size range for the face</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="range_end" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1553">The maximum size of the recommended size range for the face</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <enumeration name="ot_layout_glyph_class_t" + glib:type-name="hb_ot_layout_glyph_class_t" + glib:get-type="hb_gobject_ot_layout_glyph_class_get_type" + c:type="hb_ot_layout_glyph_class_t"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="96">The GDEF classes defined for glyphs.</doc> + <member name="unclassified" + value="0" + c:identifier="HB_OT_LAYOUT_GLYPH_CLASS_UNCLASSIFIED" + glib:nick="unclassified"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="98">Glyphs not matching the other classifications</doc> + </member> + <member name="base_glyph" + value="1" + c:identifier="HB_OT_LAYOUT_GLYPH_CLASS_BASE_GLYPH" + glib:nick="base-glyph"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="99">Spacing, single characters, capable of accepting marks</doc> + </member> + <member name="ligature" + value="2" + c:identifier="HB_OT_LAYOUT_GLYPH_CLASS_LIGATURE" + glib:nick="ligature"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="100">Glyphs that represent ligation of multiple characters</doc> + </member> + <member name="mark" + value="3" + c:identifier="HB_OT_LAYOUT_GLYPH_CLASS_MARK" + glib:nick="mark"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="101">Non-spacing, combining glyphs that represent marks</doc> + </member> + <member name="component" + value="4" + c:identifier="HB_OT_LAYOUT_GLYPH_CLASS_COMPONENT" + glib:nick="component"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.h" + line="102">Spacing glyphs that represent part of a single character</doc> + </member> + </enumeration> + <function name="ot_layout_has_glyph_classes" + c:identifier="hb_ot_layout_has_glyph_classes"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="265">Tests whether a face has any glyph classes defined in its GDEF table.</doc> + <source-position filename="../src/hb-ot-layout.h" line="94"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="271">true if data found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="267">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_has_positioning" + c:identifier="hb_ot_layout_has_positioning"> + <source-position filename="../src/hb-ot-layout.h" line="371"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1491">true if the face has GPOS data, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1489">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_has_substitution" + c:identifier="hb_ot_layout_has_substitution"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1307">Tests whether the specified face includes any GSUB substitutions.</doc> + <source-position filename="../src/hb-ot-layout.h" line="324"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1313">true if data found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1309">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_language_find_feature" + c:identifier="hb_ot_layout_language_find_feature"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="868">Fetches the index of a given feature tag in the specified face's GSUB table +or GPOS table, underneath the specified script and language.</doc> + <source-position filename="../src/hb-ot-layout.h" line="230"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="880">true if the feature is found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="870">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="871">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="872">The index of the requested script tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="language_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="873">The index of the requested language tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="feature_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="874">#hb_tag_t of the feature tag requested</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="feature_index" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="875">The index of the requested feature</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_language_get_feature_indexes" + c:identifier="hb_ot_layout_language_get_feature_indexes"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="796">Fetches a list of all features in the specified face's GSUB table +or GPOS table, underneath the specified script and language. The list +returned will begin at the offset provided.</doc> + <source-position filename="../src/hb-ot-layout.h" line="212"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="798">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="799">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="800">The index of the requested script tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="language_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="801">The index of the requested language tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="802">offset of the first feature tag to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="feature_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="803">Input = the maximum number of feature tags to return; + Output: the actual number of feature tags returned (may be zero)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="feature_indexes" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="805">The array of feature indexes found for the query</doc> + <array length="5" zero-terminated="0" c:type="unsigned int*"> + <type name="guint" c:type="unsigned int"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_layout_language_get_feature_tags" + c:identifier="hb_ot_layout_language_get_feature_tags"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="827">Fetches a list of all features in the specified face's GSUB table +or GPOS table, underneath the specified script and language. The list +returned will begin at the offset provided.</doc> + <source-position filename="../src/hb-ot-layout.h" line="221"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="829">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="830">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="831">The index of the requested script tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="language_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="832">The index of the requested language tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="833">offset of the first feature tag to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="feature_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="834">Input = the maximum number of feature tags to return; + Output = the actual number of feature tags returned (may be zero)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="feature_tags" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="836">The array of #hb_tag_t feature tags found for the query</doc> + <array length="5" zero-terminated="0" c:type="hb_tag_t*"> + <type name="tag_t" c:type="hb_tag_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_layout_language_get_required_feature" + c:identifier="hb_ot_layout_language_get_required_feature" + version="0.9.30"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="761">Fetches the tag of a requested feature index in the given face's GSUB or GPOS table, +underneath the specified script and language.</doc> + <source-position filename="../src/hb-ot-layout.h" line="204"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="773">true if the feature is found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="763">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="764">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="765">The index of the requested script tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="language_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="766">The index of the requested language tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="feature_index" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="767">The index of the requested feature</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="feature_tag" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="768">The #hb_tag_t of the requested feature</doc> + <type name="tag_t" c:type="hb_tag_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_language_get_required_feature_index" + c:identifier="hb_ot_layout_language_get_required_feature_index"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="731">Fetches the index of a requested feature in the given face's GSUB or GPOS table, +underneath the specified script and language.</doc> + <source-position filename="../src/hb-ot-layout.h" line="197"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="742">true if the feature is found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="733">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="734">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="735">The index of the requested script tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="language_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="736">The index of the requested language tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="feature_index" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="737">The index of the requested feature</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_lookup_collect_glyphs" + c:identifier="hb_ot_layout_lookup_collect_glyphs" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1191">Fetches a list of all glyphs affected by the specified lookup in the +specified face's GSUB table or GPOS table.</doc> + <source-position filename="../src/hb-ot-layout.h" line="266"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1193">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1194">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="lookup_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1195">The index of the feature lookup to query</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="glyphs_before" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1196">Array of glyphs preceding the substitution range</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="glyphs_input" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1197">Array of input glyphs that would be substituted by the lookup</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="glyphs_after" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1198">Array of glyphs following the substitution range</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="glyphs_output" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1199">Array of glyphs that would be the substitued output of the lookup</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_lookup_get_glyph_alternates" + c:identifier="hb_ot_layout_lookup_get_glyph_alternates" + version="2.6.8"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1961">Fetches alternates of a glyph from a given GSUB lookup index.</doc> + <source-position filename="../src/hb-ot-layout.h" line="327"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1974">total number of alternates found in the specific lookup index for the given glyph id.</doc> + <type name="guint" c:type="unsigned"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1963">a face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="lookup_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1964">index of the feature lookup to query.</doc> + <type name="guint" c:type="unsigned"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1965">a glyph id.</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1966">starting offset.</doc> + <type name="guint" c:type="unsigned"/> + </parameter> + <parameter name="alternate_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1967">Input = the maximum number of alternate glyphs to return; + Output = the actual number of alternate glyphs returned (may be zero).</doc> + <type name="guint" c:type="unsigned*"/> + </parameter> + <parameter name="alternate_glyphs" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1969">A glyphs buffer. + Alternate glyphs associated with the glyph id.</doc> + <array length="4" zero-terminated="0" c:type="hb_codepoint_t*"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_layout_lookup_substitute_closure" + c:identifier="hb_ot_layout_lookup_substitute_closure" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1419">Compute the transitive closure of glyphs needed for a +specified lookup.</doc> + <source-position filename="../src/hb-ot-layout.h" line="342"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1421">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="lookup_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1422">index of the feature lookup to query</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="glyphs" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1423">Array of glyphs comprising the transitive closure of the lookup</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_lookup_would_substitute" + c:identifier="hb_ot_layout_lookup_would_substitute" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1323">Tests whether a specified lookup in the specified face would +trigger a substitution on the given glyph sequence.</doc> + <source-position filename="../src/hb-ot-layout.h" line="335"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1334">true if a substitution would be triggered, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1325">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="lookup_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1326">The index of the lookup to query</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="glyphs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1327">The sequence of glyphs to query for substitution</doc> + <type name="codepoint_t" c:type="const hb_codepoint_t*"/> + </parameter> + <parameter name="glyphs_length" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1328">The length of the glyph sequence</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="zero_context" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1329">#hb_bool_t indicating whether substitutions should be context-free</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_lookups_substitute_closure" + c:identifier="hb_ot_layout_lookups_substitute_closure" + version="1.8.1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1443">Compute the transitive closure of glyphs needed for all of the +provided lookups.</doc> + <source-position filename="../src/hb-ot-layout.h" line="348"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1445">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="lookups" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1446">The set of lookups to query</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + <parameter name="glyphs" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1447">Array of glyphs comprising the transitive closure of the lookups</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_script_find_language" + c:identifier="hb_ot_layout_script_find_language" + deprecated="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="655">Fetches the index of a given language tag in the specified face's GSUB table +or GPOS table, underneath the specified script tag.</doc> + <doc-version xml:space="preserve">??</doc-version> + <doc-deprecated xml:space="preserve">??</doc-deprecated> + <source-position filename="../src/hb-ot-deprecated.h" line="56"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="666">true if the language tag is found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="657">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="658">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="659">The index of the requested script tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="language_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="660">The #hb_tag_t of the requested language</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="language_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="661">The index of the requested language</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_script_get_language_tags" + c:identifier="hb_ot_layout_script_get_language_tags"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="626">Fetches a list of language tags in the given face's GSUB or GPOS table, underneath +the specified script index. The list returned will begin at the offset provided.</doc> + <source-position filename="../src/hb-ot-layout.h" line="181"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="628">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="629">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="630">The index of the requested script tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="631">offset of the first language tag to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="language_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="632">Input = the maximum number of language tags to return; + Output = the actual number of language tags returned (may be zero)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="language_tags" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="634">Array of language tags found in the table</doc> + <array length="4" zero-terminated="0" c:type="hb_tag_t*"> + <type name="tag_t" c:type="hb_tag_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_layout_script_select_language" + c:identifier="hb_ot_layout_script_select_language" + version="2.0.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="688">Fetches the index of a given language tag in the specified face's GSUB table +or GPOS table, underneath the specified script index.</doc> + <source-position filename="../src/hb-ot-layout.h" line="189"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="700">true if the language tag is found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="690">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="691">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script_index" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="692">The index of the requested script tag</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="language_count" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="693">The number of languages in the specified script</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="language_tags" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="694">The array of language tags</doc> + <type name="tag_t" c:type="const hb_tag_t*"/> + </parameter> + <parameter name="language_index" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="695">The index of the requested language</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_table_choose_script" + c:identifier="hb_ot_layout_table_choose_script"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="481">Deprecated since 2.0.0</doc> + <source-position filename="../src/hb-ot-deprecated.h" line="49"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="483">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="484">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script_tags" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="485">Array of #hb_tag_t script tags</doc> + <type name="tag_t" c:type="const hb_tag_t*"/> + </parameter> + <parameter name="script_index" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="486">The index of the requested script tag</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="chosen_script" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="487">#hb_tag_t of the script tag requested</doc> + <type name="tag_t" c:type="hb_tag_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_table_find_feature_variations" + c:identifier="hb_ot_layout_table_find_feature_variations"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1243">Fetches a list of feature variations in the specified face's GSUB table +or GPOS table, at the specified variation coordinates.</doc> + <source-position filename="../src/hb-ot-layout.h" line="303"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1245">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1246">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="coords" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1247">The variation coordinates to query</doc> + <type name="gint" c:type="const int*"/> + </parameter> + <parameter name="num_coords" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1248">The number of variation coorinates</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="variations_index" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="1249">The array of feature variations found for the query</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_table_find_script" + c:identifier="hb_ot_layout_table_find_script"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="437">Fetches the index if a given script tag in the specified face's GSUB table +or GPOS table.</doc> + <source-position filename="../src/hb-ot-layout.h" line="160"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="447">true if the script is found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="439">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="440">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="441">#hb_tag_t of the script tag requested</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script_index" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="442">The index of the requested script tag</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_table_get_feature_tags" + c:identifier="hb_ot_layout_table_get_feature_tags"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="566">Fetches a list of all feature tags in the given face's GSUB or GPOS table.</doc> + <source-position filename="../src/hb-ot-layout.h" line="174"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="568">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="569">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="570">offset of the first feature tag to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="feature_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="571">Input = the maximum number of feature tags to return; + Output = the actual number of feature tags returned (may be zero)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="feature_tags" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="573">Array of feature tags found in the table</doc> + <array length="3" zero-terminated="0" c:type="hb_tag_t*"> + <type name="tag_t" c:type="hb_tag_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_layout_table_get_lookup_count" + c:identifier="hb_ot_layout_table_get_lookup_count" + version="0.9.22"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="944">Fetches the total number of lookups enumerated in the specified +face's GSUB table or GPOS table.</doc> + <source-position filename="../src/hb-ot-layout.h" line="246"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="946">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="947">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + </parameters> + </function> + <function name="ot_layout_table_get_script_tags" + c:identifier="hb_ot_layout_table_get_script_tags"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="410">Fetches a list of all scripts enumerated in the specified face's GSUB table +or GPOS table. The list returned will begin at the offset provided.</doc> + <source-position filename="../src/hb-ot-layout.h" line="153"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="412">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="413">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="414">offset of the first script tag to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="script_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="415">Input = the maximum number of script tags to return; + Output = the actual number of script tags returned (may be zero)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="script_tags" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="417">The array of #hb_tag_t script tags found for the query</doc> + <array length="3" zero-terminated="0" c:type="hb_tag_t*"> + <type name="tag_t" c:type="hb_tag_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_layout_table_select_script" + c:identifier="hb_ot_layout_table_select_script" + version="2.0.0"> + <source-position filename="../src/hb-ot-layout.h" line="166"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="506">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="table_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="507">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script_count" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="508">Number of script tags in the array</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="script_tags" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="509">Array of #hb_tag_t script tags</doc> + <type name="tag_t" c:type="const hb_tag_t*"/> + </parameter> + <parameter name="script_index" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="510">The index of the requested script</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="chosen_script" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-layout.cc" + line="511">#hb_tag_t of the requested script</doc> + <type name="tag_t" c:type="hb_tag_t*"/> + </parameter> + </parameters> + </function> + <enumeration name="ot_math_constant_t" + version="1.3.3" + glib:type-name="hb_ot_math_constant_t" + glib:get-type="hb_gobject_ot_math_constant_get_type" + c:type="hb_ot_math_constant_t"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.h" + line="50">The 'MATH' table constants specified at +https://docs.microsoft.com/en-us/typography/opentype/spec/math</doc> + <member name="script_percent_scale_down" + value="0" + c:identifier="HB_OT_MATH_CONSTANT_SCRIPT_PERCENT_SCALE_DOWN" + glib:nick="script-percent-scale-down"> + </member> + <member name="script_script_percent_scale_down" + value="1" + c:identifier="HB_OT_MATH_CONSTANT_SCRIPT_SCRIPT_PERCENT_SCALE_DOWN" + glib:nick="script-script-percent-scale-down"> + </member> + <member name="delimited_sub_formula_min_height" + value="2" + c:identifier="HB_OT_MATH_CONSTANT_DELIMITED_SUB_FORMULA_MIN_HEIGHT" + glib:nick="delimited-sub-formula-min-height"> + </member> + <member name="display_operator_min_height" + value="3" + c:identifier="HB_OT_MATH_CONSTANT_DISPLAY_OPERATOR_MIN_HEIGHT" + glib:nick="display-operator-min-height"> + </member> + <member name="math_leading" + value="4" + c:identifier="HB_OT_MATH_CONSTANT_MATH_LEADING" + glib:nick="math-leading"> + </member> + <member name="axis_height" + value="5" + c:identifier="HB_OT_MATH_CONSTANT_AXIS_HEIGHT" + glib:nick="axis-height"> + </member> + <member name="accent_base_height" + value="6" + c:identifier="HB_OT_MATH_CONSTANT_ACCENT_BASE_HEIGHT" + glib:nick="accent-base-height"> + </member> + <member name="flattened_accent_base_height" + value="7" + c:identifier="HB_OT_MATH_CONSTANT_FLATTENED_ACCENT_BASE_HEIGHT" + glib:nick="flattened-accent-base-height"> + </member> + <member name="subscript_shift_down" + value="8" + c:identifier="HB_OT_MATH_CONSTANT_SUBSCRIPT_SHIFT_DOWN" + glib:nick="subscript-shift-down"> + </member> + <member name="subscript_top_max" + value="9" + c:identifier="HB_OT_MATH_CONSTANT_SUBSCRIPT_TOP_MAX" + glib:nick="subscript-top-max"> + </member> + <member name="subscript_baseline_drop_min" + value="10" + c:identifier="HB_OT_MATH_CONSTANT_SUBSCRIPT_BASELINE_DROP_MIN" + glib:nick="subscript-baseline-drop-min"> + </member> + <member name="superscript_shift_up" + value="11" + c:identifier="HB_OT_MATH_CONSTANT_SUPERSCRIPT_SHIFT_UP" + glib:nick="superscript-shift-up"> + </member> + <member name="superscript_shift_up_cramped" + value="12" + c:identifier="HB_OT_MATH_CONSTANT_SUPERSCRIPT_SHIFT_UP_CRAMPED" + glib:nick="superscript-shift-up-cramped"> + </member> + <member name="superscript_bottom_min" + value="13" + c:identifier="HB_OT_MATH_CONSTANT_SUPERSCRIPT_BOTTOM_MIN" + glib:nick="superscript-bottom-min"> + </member> + <member name="superscript_baseline_drop_max" + value="14" + c:identifier="HB_OT_MATH_CONSTANT_SUPERSCRIPT_BASELINE_DROP_MAX" + glib:nick="superscript-baseline-drop-max"> + </member> + <member name="sub_superscript_gap_min" + value="15" + c:identifier="HB_OT_MATH_CONSTANT_SUB_SUPERSCRIPT_GAP_MIN" + glib:nick="sub-superscript-gap-min"> + </member> + <member name="superscript_bottom_max_with_subscript" + value="16" + c:identifier="HB_OT_MATH_CONSTANT_SUPERSCRIPT_BOTTOM_MAX_WITH_SUBSCRIPT" + glib:nick="superscript-bottom-max-with-subscript"> + </member> + <member name="space_after_script" + value="17" + c:identifier="HB_OT_MATH_CONSTANT_SPACE_AFTER_SCRIPT" + glib:nick="space-after-script"> + </member> + <member name="upper_limit_gap_min" + value="18" + c:identifier="HB_OT_MATH_CONSTANT_UPPER_LIMIT_GAP_MIN" + glib:nick="upper-limit-gap-min"> + </member> + <member name="upper_limit_baseline_rise_min" + value="19" + c:identifier="HB_OT_MATH_CONSTANT_UPPER_LIMIT_BASELINE_RISE_MIN" + glib:nick="upper-limit-baseline-rise-min"> + </member> + <member name="lower_limit_gap_min" + value="20" + c:identifier="HB_OT_MATH_CONSTANT_LOWER_LIMIT_GAP_MIN" + glib:nick="lower-limit-gap-min"> + </member> + <member name="lower_limit_baseline_drop_min" + value="21" + c:identifier="HB_OT_MATH_CONSTANT_LOWER_LIMIT_BASELINE_DROP_MIN" + glib:nick="lower-limit-baseline-drop-min"> + </member> + <member name="stack_top_shift_up" + value="22" + c:identifier="HB_OT_MATH_CONSTANT_STACK_TOP_SHIFT_UP" + glib:nick="stack-top-shift-up"> + </member> + <member name="stack_top_display_style_shift_up" + value="23" + c:identifier="HB_OT_MATH_CONSTANT_STACK_TOP_DISPLAY_STYLE_SHIFT_UP" + glib:nick="stack-top-display-style-shift-up"> + </member> + <member name="stack_bottom_shift_down" + value="24" + c:identifier="HB_OT_MATH_CONSTANT_STACK_BOTTOM_SHIFT_DOWN" + glib:nick="stack-bottom-shift-down"> + </member> + <member name="stack_bottom_display_style_shift_down" + value="25" + c:identifier="HB_OT_MATH_CONSTANT_STACK_BOTTOM_DISPLAY_STYLE_SHIFT_DOWN" + glib:nick="stack-bottom-display-style-shift-down"> + </member> + <member name="stack_gap_min" + value="26" + c:identifier="HB_OT_MATH_CONSTANT_STACK_GAP_MIN" + glib:nick="stack-gap-min"> + </member> + <member name="stack_display_style_gap_min" + value="27" + c:identifier="HB_OT_MATH_CONSTANT_STACK_DISPLAY_STYLE_GAP_MIN" + glib:nick="stack-display-style-gap-min"> + </member> + <member name="stretch_stack_top_shift_up" + value="28" + c:identifier="HB_OT_MATH_CONSTANT_STRETCH_STACK_TOP_SHIFT_UP" + glib:nick="stretch-stack-top-shift-up"> + </member> + <member name="stretch_stack_bottom_shift_down" + value="29" + c:identifier="HB_OT_MATH_CONSTANT_STRETCH_STACK_BOTTOM_SHIFT_DOWN" + glib:nick="stretch-stack-bottom-shift-down"> + </member> + <member name="stretch_stack_gap_above_min" + value="30" + c:identifier="HB_OT_MATH_CONSTANT_STRETCH_STACK_GAP_ABOVE_MIN" + glib:nick="stretch-stack-gap-above-min"> + </member> + <member name="stretch_stack_gap_below_min" + value="31" + c:identifier="HB_OT_MATH_CONSTANT_STRETCH_STACK_GAP_BELOW_MIN" + glib:nick="stretch-stack-gap-below-min"> + </member> + <member name="fraction_numerator_shift_up" + value="32" + c:identifier="HB_OT_MATH_CONSTANT_FRACTION_NUMERATOR_SHIFT_UP" + glib:nick="fraction-numerator-shift-up"> + </member> + <member name="fraction_numerator_display_style_shift_up" + value="33" + c:identifier="HB_OT_MATH_CONSTANT_FRACTION_NUMERATOR_DISPLAY_STYLE_SHIFT_UP" + glib:nick="fraction-numerator-display-style-shift-up"> + </member> + <member name="fraction_denominator_shift_down" + value="34" + c:identifier="HB_OT_MATH_CONSTANT_FRACTION_DENOMINATOR_SHIFT_DOWN" + glib:nick="fraction-denominator-shift-down"> + </member> + <member name="fraction_denominator_display_style_shift_down" + value="35" + c:identifier="HB_OT_MATH_CONSTANT_FRACTION_DENOMINATOR_DISPLAY_STYLE_SHIFT_DOWN" + glib:nick="fraction-denominator-display-style-shift-down"> + </member> + <member name="fraction_numerator_gap_min" + value="36" + c:identifier="HB_OT_MATH_CONSTANT_FRACTION_NUMERATOR_GAP_MIN" + glib:nick="fraction-numerator-gap-min"> + </member> + <member name="fraction_num_display_style_gap_min" + value="37" + c:identifier="HB_OT_MATH_CONSTANT_FRACTION_NUM_DISPLAY_STYLE_GAP_MIN" + glib:nick="fraction-num-display-style-gap-min"> + </member> + <member name="fraction_rule_thickness" + value="38" + c:identifier="HB_OT_MATH_CONSTANT_FRACTION_RULE_THICKNESS" + glib:nick="fraction-rule-thickness"> + </member> + <member name="fraction_denominator_gap_min" + value="39" + c:identifier="HB_OT_MATH_CONSTANT_FRACTION_DENOMINATOR_GAP_MIN" + glib:nick="fraction-denominator-gap-min"> + </member> + <member name="fraction_denom_display_style_gap_min" + value="40" + c:identifier="HB_OT_MATH_CONSTANT_FRACTION_DENOM_DISPLAY_STYLE_GAP_MIN" + glib:nick="fraction-denom-display-style-gap-min"> + </member> + <member name="skewed_fraction_horizontal_gap" + value="41" + c:identifier="HB_OT_MATH_CONSTANT_SKEWED_FRACTION_HORIZONTAL_GAP" + glib:nick="skewed-fraction-horizontal-gap"> + </member> + <member name="skewed_fraction_vertical_gap" + value="42" + c:identifier="HB_OT_MATH_CONSTANT_SKEWED_FRACTION_VERTICAL_GAP" + glib:nick="skewed-fraction-vertical-gap"> + </member> + <member name="overbar_vertical_gap" + value="43" + c:identifier="HB_OT_MATH_CONSTANT_OVERBAR_VERTICAL_GAP" + glib:nick="overbar-vertical-gap"> + </member> + <member name="overbar_rule_thickness" + value="44" + c:identifier="HB_OT_MATH_CONSTANT_OVERBAR_RULE_THICKNESS" + glib:nick="overbar-rule-thickness"> + </member> + <member name="overbar_extra_ascender" + value="45" + c:identifier="HB_OT_MATH_CONSTANT_OVERBAR_EXTRA_ASCENDER" + glib:nick="overbar-extra-ascender"> + </member> + <member name="underbar_vertical_gap" + value="46" + c:identifier="HB_OT_MATH_CONSTANT_UNDERBAR_VERTICAL_GAP" + glib:nick="underbar-vertical-gap"> + </member> + <member name="underbar_rule_thickness" + value="47" + c:identifier="HB_OT_MATH_CONSTANT_UNDERBAR_RULE_THICKNESS" + glib:nick="underbar-rule-thickness"> + </member> + <member name="underbar_extra_descender" + value="48" + c:identifier="HB_OT_MATH_CONSTANT_UNDERBAR_EXTRA_DESCENDER" + glib:nick="underbar-extra-descender"> + </member> + <member name="radical_vertical_gap" + value="49" + c:identifier="HB_OT_MATH_CONSTANT_RADICAL_VERTICAL_GAP" + glib:nick="radical-vertical-gap"> + </member> + <member name="radical_display_style_vertical_gap" + value="50" + c:identifier="HB_OT_MATH_CONSTANT_RADICAL_DISPLAY_STYLE_VERTICAL_GAP" + glib:nick="radical-display-style-vertical-gap"> + </member> + <member name="radical_rule_thickness" + value="51" + c:identifier="HB_OT_MATH_CONSTANT_RADICAL_RULE_THICKNESS" + glib:nick="radical-rule-thickness"> + </member> + <member name="radical_extra_ascender" + value="52" + c:identifier="HB_OT_MATH_CONSTANT_RADICAL_EXTRA_ASCENDER" + glib:nick="radical-extra-ascender"> + </member> + <member name="radical_kern_before_degree" + value="53" + c:identifier="HB_OT_MATH_CONSTANT_RADICAL_KERN_BEFORE_DEGREE" + glib:nick="radical-kern-before-degree"> + </member> + <member name="radical_kern_after_degree" + value="54" + c:identifier="HB_OT_MATH_CONSTANT_RADICAL_KERN_AFTER_DEGREE" + glib:nick="radical-kern-after-degree"> + </member> + <member name="radical_degree_bottom_raise_percent" + value="55" + c:identifier="HB_OT_MATH_CONSTANT_RADICAL_DEGREE_BOTTOM_RAISE_PERCENT" + glib:nick="radical-degree-bottom-raise-percent"> + </member> + </enumeration> + <function name="ot_math_get_constant" + c:identifier="hb_ot_math_get_constant" + version="1.3.3"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="69">Fetches the specified math constant. For most constants, the value returned +is an #hb_position_t. + +However, if the requested constant is #HB_OT_MATH_CONSTANT_SCRIPT_PERCENT_SCALE_DOWN, +#HB_OT_MATH_CONSTANT_SCRIPT_SCRIPT_PERCENT_SCALE_DOWN or +#HB_OT_MATH_CONSTANT_SCRIPT_PERCENT_SCALE_DOWN, then the return value is +an integer between 0 and 100 representing that percentage.</doc> + <source-position filename="../src/hb-ot-math.h" line="185"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="82">the requested constant or zero</doc> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="71">#hb_font_t to work upon</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="constant" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="72">#hb_ot_math_constant_t the constant to retrieve</doc> + <type name="ot_math_constant_t" c:type="hb_ot_math_constant_t"/> + </parameter> + </parameters> + </function> + <function name="ot_math_get_glyph_assembly" + c:identifier="hb_ot_math_get_glyph_assembly" + version="1.3.3"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="249">Fetches the GlyphAssembly for the specified font, glyph index, and direction. +Returned are a list of #hb_ot_math_glyph_part_t glyph parts that can be +used to draw the glyph and an italics-correction value (if one is defined +in the font). + +<note>The @direction parameter is only used to select between horizontal +or vertical directions for the construction. Even though all #hb_direction_t +values are accepted, only the result of #HB_DIRECTION_IS_HORIZONTAL is +considered.</note></doc> + <source-position filename="../src/hb-ot-math.h" line="219"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="270">the total number of parts in the glyph assembly</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="251">#hb_font_t to work upon</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="252">The index of the glyph to stretch</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="253">direction of the stretching (horizontal or vertical)</doc> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="254">offset of the first glyph part to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="parts_count" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="255">Input = maximum number of glyph parts to return; + Output = actual number of parts returned</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="parts" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="257">the glyph parts returned</doc> + <array length="4" + zero-terminated="0" + c:type="hb_ot_math_glyph_part_t*"> + <type name="ot_math_glyph_part_t" + c:type="hb_ot_math_glyph_part_t"/> + </array> + </parameter> + <parameter name="italics_correction" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="258">italics correction of the glyph assembly</doc> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_math_get_glyph_italics_correction" + c:identifier="hb_ot_math_get_glyph_italics_correction" + version="1.3.3"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="93">Fetches an italics-correction value (if one exists) for the specified +glyph index.</doc> + <source-position filename="../src/hb-ot-math.h" line="189"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="101">the italics correction of the glyph or zero</doc> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="95">#hb_font_t to work upon</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="96">The glyph index from which to retrieve the value</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="ot_math_get_glyph_kerning" + c:identifier="hb_ot_math_get_glyph_kerning" + version="1.3.3"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="156">Fetches the math kerning (cut-ins) value for the specified font, glyph index, and +@kern. + +If the MathKern table is found, the function examines it to find a height +value that is greater or equal to @correction_height. If such a height +value is found, corresponding kerning value from the table is returned. If +no such height value is found, the last kerning value is returned.</doc> + <source-position filename="../src/hb-ot-math.h" line="201"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="171">requested kerning value or zero</doc> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="158">#hb_font_t to work upon</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="159">The glyph index from which to retrieve the value</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="kern" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="160">The #hb_ot_math_kern_t from which to retrieve the value</doc> + <type name="ot_math_kern_t" c:type="hb_ot_math_kern_t"/> + </parameter> + <parameter name="correction_height" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="161">the correction height to use to determine the kerning.</doc> + <type name="position_t" c:type="hb_position_t"/> + </parameter> + </parameters> + </function> + <function name="ot_math_get_glyph_top_accent_attachment" + c:identifier="hb_ot_math_get_glyph_top_accent_attachment" + version="1.3.3"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="112">Fetches a top-accent-attachment value (if one exists) for the specified +glyph index. + +For any glyph that does not have a top-accent-attachment value - that is, +a glyph not covered by the `MathTopAccentAttachment` table (or, when +@font has no `MathTopAccentAttachment` table or no `MATH` table, any +glyph) - the function synthesizes a value, returning the position at +one-half the glyph's advance width.</doc> + <source-position filename="../src/hb-ot-math.h" line="193"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="126">the top accent attachment of the glyph or 0.5 * the advance + width of @glyph</doc> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="114">#hb_font_t to work upon</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="115">The glyph index from which to retrieve the value</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="ot_math_get_glyph_variants" + c:identifier="hb_ot_math_get_glyph_variants" + version="1.3.3"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="187">Fetches the MathGlyphConstruction for the specified font, glyph index, and +direction. The corresponding list of size variants is returned as a list of +#hb_ot_math_glyph_variant_t structs. + +<note>The @direction parameter is only used to select between horizontal +or vertical directions for the construction. Even though all #hb_direction_t +values are accepted, only the result of #HB_DIRECTION_IS_HORIZONTAL is +considered.</note></doc> + <source-position filename="../src/hb-ot-math.h" line="207"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="206">the total number of size variants available or zero</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="189">#hb_font_t to work upon</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="190">The index of the glyph to stretch</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="191">The direction of the stretching (horizontal or vertical)</doc> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="192">offset of the first variant to retrieve</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="variants_count" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="193">Input = the maximum number of variants to return; + Output = the actual number of variants returned</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="variants" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="195">array of variants returned</doc> + <array length="4" + zero-terminated="0" + c:type="hb_ot_math_glyph_variant_t*"> + <type name="ot_math_glyph_variant_t" + c:type="hb_ot_math_glyph_variant_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_math_get_min_connector_overlap" + c:identifier="hb_ot_math_get_min_connector_overlap" + version="1.3.3"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="224">Fetches the MathVariants table for the specified font and returns the +minimum overlap of connecting glyphs that are required to draw a glyph +assembly in the specified direction. + +<note>The @direction parameter is only used to select between horizontal +or vertical directions for the construction. Even though all #hb_direction_t +values are accepted, only the result of #HB_DIRECTION_IS_HORIZONTAL is +considered.</note></doc> + <source-position filename="../src/hb-ot-math.h" line="215"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="238">requested minimum connector overlap or zero</doc> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="226">#hb_font_t to work upon</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="direction" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="227">direction of the stretching (horizontal or vertical)</doc> + <type name="direction_t" c:type="hb_direction_t"/> + </parameter> + </parameters> + </function> + <bitfield name="ot_math_glyph_part_flags_t" + version="1.3.3" + glib:type-name="hb_ot_math_glyph_part_flags_t" + glib:get-type="hb_gobject_ot_math_glyph_part_flags_get_type" + c:type="hb_ot_math_glyph_part_flags_t"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.h" + line="146">Flags for math glyph parts.</doc> + <member name="extender" + value="1" + c:identifier="HB_OT_MATH_GLYPH_PART_FLAG_EXTENDER" + glib:nick="extender"> + </member> + </bitfield> + <record name="ot_math_glyph_part_t" + c:type="hb_ot_math_glyph_part_t" + version="1.3.3" + glib:type-name="hb_ot_math_glyph_part_t" + glib:get-type="hb_gobject_ot_math_glyph_part_get_type" + c:symbol-prefix="gobject_ot_math_glyph_part"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.h" + line="157">Data type to hold information for a "part" component of a math-variant glyph. +Large variants for stretchable math glyphs (such as parentheses) can be constructed +on the fly from parts.</doc> + <source-position filename="../src/hb-ot-math.h" line="177"/> + <field name="glyph" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.h" + line="159">The glyph index of the variant part</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </field> + <field name="start_connector_length" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.h" + line="160">The length of the connector on the starting side of the variant part</doc> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="end_connector_length" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.h" + line="161">The length of the connector on the ending side of the variant part</doc> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="full_advance" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.h" + line="162">The total advance of the part</doc> + <type name="position_t" c:type="hb_position_t"/> + </field> + <field name="flags" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.h" + line="163">#hb_ot_math_glyph_part_flags_t flags for the part</doc> + <type name="ot_math_glyph_part_flags_t" + c:type="hb_ot_math_glyph_part_flags_t"/> + </field> + </record> + <record name="ot_math_glyph_variant_t" + c:type="hb_ot_math_glyph_variant_t" + version="1.3.3" + glib:type-name="hb_ot_math_glyph_variant_t" + glib:get-type="hb_gobject_ot_math_glyph_variant_get_type" + c:symbol-prefix="gobject_ot_math_glyph_variant"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.h" + line="132">Data type to hold math-variant information for a glyph.</doc> + <source-position filename="../src/hb-ot-math.h" line="144"/> + <field name="glyph" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.h" + line="134">The glyph index of the variant</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </field> + <field name="advance" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.h" + line="135">The advance width of the variant</doc> + <type name="position_t" c:type="hb_position_t"/> + </field> + </record> + <function name="ot_math_has_data" + c:identifier="hb_ot_math_has_data" + version="1.3.3"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="53">Tests whether a face has a `MATH` table.</doc> + <source-position filename="../src/hb-ot-math.h" line="182"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="59">true if the table is found, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="55">#hb_face_t to test</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_math_is_glyph_extended_shape" + c:identifier="hb_ot_math_is_glyph_extended_shape" + version="1.3.3"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="138">Tests whether the given glyph index is an extended shape in the face.</doc> + <source-position filename="../src/hb-ot-math.h" line="197"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="145">true if the glyph is an extended shape, false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="140">#hb_face_t to work upon</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="glyph" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.cc" + line="141">The glyph index to test</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <enumeration name="ot_math_kern_t" + version="1.3.3" + glib:type-name="hb_ot_math_kern_t" + glib:get-type="hb_gobject_ot_math_kern_get_type" + c:type="hb_ot_math_kern_t"> + <doc xml:space="preserve" + filename="../src/hb-ot-math.h" + line="117">The math kerning-table types defined for the four corners +of a glyph.</doc> + <member name="top_right" + value="0" + c:identifier="HB_OT_MATH_KERN_TOP_RIGHT" + glib:nick="top-right"> + </member> + <member name="top_left" + value="1" + c:identifier="HB_OT_MATH_KERN_TOP_LEFT" + glib:nick="top-left"> + </member> + <member name="bottom_right" + value="2" + c:identifier="HB_OT_MATH_KERN_BOTTOM_RIGHT" + glib:nick="bottom-right"> + </member> + <member name="bottom_left" + value="3" + c:identifier="HB_OT_MATH_KERN_BOTTOM_LEFT" + glib:nick="bottom-left"> + </member> + </enumeration> + <function name="ot_meta_get_entry_tags" + c:identifier="hb_ot_meta_get_entry_tags" + version="2.6.0"> + <source-position filename="../src/hb-ot-meta.h" line="61"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.cc" + line="47">Number of all available feature types.</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.cc" + line="42">a face object</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.cc" + line="43">iteration's start offset</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="entries_count" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.cc" + line="44">buffer size as input, filled size as output</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="entries" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.cc" + line="45">entries tags buffer</doc> + <array length="2" zero-terminated="0" c:type="hb_ot_meta_tag_t*"> + <type name="ot_meta_tag_t" c:type="hb_ot_meta_tag_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_meta_reference_entry" + c:identifier="hb_ot_meta_reference_entry" + version="2.6.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.cc" + line="60">It fetches metadata entry of a given tag from a font.</doc> + <source-position filename="../src/hb-ot-meta.h" line="67"/> + <return-value transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.cc" + line="67">A blob containing the blob.</doc> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.cc" + line="62">a #hb_face_t object.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="meta_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.cc" + line="63">tag of metadata you like to have.</doc> + <type name="ot_meta_tag_t" c:type="hb_ot_meta_tag_t"/> + </parameter> + </parameters> + </function> + <enumeration name="ot_meta_tag_t" + version="2.6.0" + glib:type-name="hb_ot_meta_tag_t" + glib:get-type="hb_gobject_ot_meta_tag_get_type" + c:type="hb_ot_meta_tag_t"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.h" + line="36">Known metadata tags from https://docs.microsoft.com/en-us/typography/opentype/spec/meta</doc> + <member name="design_languages" + value="1684827751" + c:identifier="HB_OT_META_TAG_DESIGN_LANGUAGES" + glib:nick="design-languages"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.h" + line="38">Design languages. Text, using only +Basic Latin (ASCII) characters. Indicates languages and/or scripts +for the user audiences that the font was primarily designed for.</doc> + </member> + <member name="supported_languages" + value="1936485991" + c:identifier="HB_OT_META_TAG_SUPPORTED_LANGUAGES" + glib:nick="supported-languages"> + <doc xml:space="preserve" + filename="../src/hb-ot-meta.h" + line="41">Supported languages. Text, using +only Basic Latin (ASCII) characters. Indicates languages and/or scripts +that the font is declared to be capable of supporting.</doc> + </member> + </enumeration> + <function name="ot_metrics_get_position" + c:identifier="hb_ot_metrics_get_position" + version="2.6.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.cc" + line="111">It fetches metrics value corresponding to a given tag from a font.</doc> + <source-position filename="../src/hb-ot-metrics.h" line="107"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.cc" + line="119">Whether found the requested metrics in the font.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.cc" + line="113">a #hb_font_t object.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="metrics_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.cc" + line="114">tag of metrics value you like to fetch.</doc> + <type name="ot_metrics_tag_t" c:type="hb_ot_metrics_tag_t"/> + </parameter> + <parameter name="position" + direction="out" + caller-allocates="0" + transfer-ownership="full" + optional="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.cc" + line="115">result of metrics value from the font.</doc> + <type name="position_t" c:type="hb_position_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_metrics_get_variation" + c:identifier="hb_ot_metrics_get_variation" + version="2.6.0"> + <source-position filename="../src/hb-ot-metrics.h" line="112"/> + <return-value transfer-ownership="none"> + <type name="gfloat" c:type="float"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="metrics_tag" transfer-ownership="none"> + <type name="ot_metrics_tag_t" c:type="hb_ot_metrics_tag_t"/> + </parameter> + </parameters> + </function> + <function name="ot_metrics_get_x_variation" + c:identifier="hb_ot_metrics_get_x_variation" + version="2.6.0"> + <source-position filename="../src/hb-ot-metrics.h" line="115"/> + <return-value transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="metrics_tag" transfer-ownership="none"> + <type name="ot_metrics_tag_t" c:type="hb_ot_metrics_tag_t"/> + </parameter> + </parameters> + </function> + <function name="ot_metrics_get_y_variation" + c:identifier="hb_ot_metrics_get_y_variation" + version="2.6.0"> + <source-position filename="../src/hb-ot-metrics.h" line="118"/> + <return-value transfer-ownership="none"> + <type name="position_t" c:type="hb_position_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="metrics_tag" transfer-ownership="none"> + <type name="ot_metrics_tag_t" c:type="hb_ot_metrics_tag_t"/> + </parameter> + </parameters> + </function> + <enumeration name="ot_metrics_tag_t" + version="2.6.0" + glib:type-name="hb_ot_metrics_tag_t" + glib:get-type="hb_gobject_ot_metrics_tag_get_type" + c:type="hb_ot_metrics_tag_t"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="38">From https://docs.microsoft.com/en-us/typography/opentype/spec/mvar#value-tags</doc> + <member name="horizontal_ascender" + value="1751216995" + c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_ASCENDER" + glib:nick="horizontal-ascender"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="40">horizontal ascender.</doc> + </member> + <member name="horizontal_descender" + value="1751413603" + c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_DESCENDER" + glib:nick="horizontal-descender"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="41">horizontal descender.</doc> + </member> + <member name="horizontal_line_gap" + value="1751934832" + c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_LINE_GAP" + glib:nick="horizontal-line-gap"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="42">horizontal line gap.</doc> + </member> + <member name="horizontal_clipping_ascent" + value="1751346273" + c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_CLIPPING_ASCENT" + glib:nick="horizontal-clipping-ascent"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="43">horizontal clipping ascent.</doc> + </member> + <member name="horizontal_clipping_descent" + value="1751346276" + c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_CLIPPING_DESCENT" + glib:nick="horizontal-clipping-descent"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="44">horizontal clipping descent.</doc> + </member> + <member name="vertical_ascender" + value="1986098019" + c:identifier="HB_OT_METRICS_TAG_VERTICAL_ASCENDER" + glib:nick="vertical-ascender"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="45">vertical ascender.</doc> + </member> + <member name="vertical_descender" + value="1986294627" + c:identifier="HB_OT_METRICS_TAG_VERTICAL_DESCENDER" + glib:nick="vertical-descender"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="46">vertical descender.</doc> + </member> + <member name="vertical_line_gap" + value="1986815856" + c:identifier="HB_OT_METRICS_TAG_VERTICAL_LINE_GAP" + glib:nick="vertical-line-gap"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="47">vertical line gap.</doc> + </member> + <member name="horizontal_caret_rise" + value="1751347827" + c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_CARET_RISE" + glib:nick="horizontal-caret-rise"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="48">horizontal caret rise.</doc> + </member> + <member name="horizontal_caret_run" + value="1751347822" + c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_CARET_RUN" + glib:nick="horizontal-caret-run"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="49">horizontal caret run.</doc> + </member> + <member name="horizontal_caret_offset" + value="1751347046" + c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_CARET_OFFSET" + glib:nick="horizontal-caret-offset"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="50">horizontal caret offset.</doc> + </member> + <member name="vertical_caret_rise" + value="1986228851" + c:identifier="HB_OT_METRICS_TAG_VERTICAL_CARET_RISE" + glib:nick="vertical-caret-rise"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="51">vertical caret rise.</doc> + </member> + <member name="vertical_caret_run" + value="1986228846" + c:identifier="HB_OT_METRICS_TAG_VERTICAL_CARET_RUN" + glib:nick="vertical-caret-run"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="52">vertical caret run.</doc> + </member> + <member name="vertical_caret_offset" + value="1986228070" + c:identifier="HB_OT_METRICS_TAG_VERTICAL_CARET_OFFSET" + glib:nick="vertical-caret-offset"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="53">vertical caret offset.</doc> + </member> + <member name="x_height" + value="2020108148" + c:identifier="HB_OT_METRICS_TAG_X_HEIGHT" + glib:nick="x-height"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="54">x height.</doc> + </member> + <member name="cap_height" + value="1668311156" + c:identifier="HB_OT_METRICS_TAG_CAP_HEIGHT" + glib:nick="cap-height"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="55">cap height.</doc> + </member> + <member name="subscript_em_x_size" + value="1935833203" + c:identifier="HB_OT_METRICS_TAG_SUBSCRIPT_EM_X_SIZE" + glib:nick="subscript-em-x-size"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="56">subscript em x size.</doc> + </member> + <member name="subscript_em_y_size" + value="1935833459" + c:identifier="HB_OT_METRICS_TAG_SUBSCRIPT_EM_Y_SIZE" + glib:nick="subscript-em-y-size"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="57">subscript em y size.</doc> + </member> + <member name="subscript_em_x_offset" + value="1935833199" + c:identifier="HB_OT_METRICS_TAG_SUBSCRIPT_EM_X_OFFSET" + glib:nick="subscript-em-x-offset"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="58">subscript em x offset.</doc> + </member> + <member name="subscript_em_y_offset" + value="1935833455" + c:identifier="HB_OT_METRICS_TAG_SUBSCRIPT_EM_Y_OFFSET" + glib:nick="subscript-em-y-offset"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="59">subscript em y offset.</doc> + </member> + <member name="superscript_em_x_size" + value="1936750707" + c:identifier="HB_OT_METRICS_TAG_SUPERSCRIPT_EM_X_SIZE" + glib:nick="superscript-em-x-size"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="60">superscript em x size.</doc> + </member> + <member name="superscript_em_y_size" + value="1936750963" + c:identifier="HB_OT_METRICS_TAG_SUPERSCRIPT_EM_Y_SIZE" + glib:nick="superscript-em-y-size"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="61">superscript em y size.</doc> + </member> + <member name="superscript_em_x_offset" + value="1936750703" + c:identifier="HB_OT_METRICS_TAG_SUPERSCRIPT_EM_X_OFFSET" + glib:nick="superscript-em-x-offset"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="62">superscript em x offset.</doc> + </member> + <member name="superscript_em_y_offset" + value="1936750959" + c:identifier="HB_OT_METRICS_TAG_SUPERSCRIPT_EM_Y_OFFSET" + glib:nick="superscript-em-y-offset"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="63">superscript em y offset.</doc> + </member> + <member name="strikeout_size" + value="1937011315" + c:identifier="HB_OT_METRICS_TAG_STRIKEOUT_SIZE" + glib:nick="strikeout-size"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="64">strikeout size.</doc> + </member> + <member name="strikeout_offset" + value="1937011311" + c:identifier="HB_OT_METRICS_TAG_STRIKEOUT_OFFSET" + glib:nick="strikeout-offset"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="65">strikeout offset.</doc> + </member> + <member name="underline_size" + value="1970168947" + c:identifier="HB_OT_METRICS_TAG_UNDERLINE_SIZE" + glib:nick="underline-size"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="66">underline size.</doc> + </member> + <member name="underline_offset" + value="1970168943" + c:identifier="HB_OT_METRICS_TAG_UNDERLINE_OFFSET" + glib:nick="underline-offset"> + <doc xml:space="preserve" + filename="../src/hb-ot-metrics.h" + line="67">underline offset.</doc> + </member> + </enumeration> + <record name="ot_name_entry_t" c:type="hb_ot_name_entry_t" version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.h" + line="82">Structure representing a name ID in a particular language.</doc> + <source-position filename="../src/hb-ot-name.h" line="98"/> + <field name="name_id" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.h" + line="84">name ID</doc> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/> + </field> + <field name="var" readable="0" private="1"> + <type name="var_int_t" c:type="hb_var_int_t"/> + </field> + <field name="language" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.h" + line="85">language</doc> + <type name="language_t" c:type="hb_language_t"/> + </field> + </record> + <function name="ot_name_get_utf16" + c:identifier="hb_ot_name_get_utf16" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="175">Fetches a font name from the OpenType 'name' table. +If @language is #HB_LANGUAGE_INVALID, English ("en") is assumed. +Returns string in UTF-16 encoding.</doc> + <source-position filename="../src/hb-ot-name.h" line="113"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="188">full length of the requested string, or 0 if not found.</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="177">font face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="name_id" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="178">OpenType name identifier to fetch.</doc> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/> + </parameter> + <parameter name="language" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="179">language to fetch the name for.</doc> + <type name="language_t" c:type="hb_language_t"/> + </parameter> + <parameter name="text_size" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="180">input size of @text buffer, and output size of + text written to buffer.</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="text" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="182">buffer to write fetched name into.</doc> + <array length="3" zero-terminated="0" c:type="uint16_t*"> + <type name="guint16" c:type="uint16_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_name_get_utf32" + c:identifier="hb_ot_name_get_utf32" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="201">Fetches a font name from the OpenType 'name' table. +If @language is #HB_LANGUAGE_INVALID, English ("en") is assumed. +Returns string in UTF-32 encoding.</doc> + <source-position filename="../src/hb-ot-name.h" line="120"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="214">full length of the requested string, or 0 if not found.</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="203">font face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="name_id" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="204">OpenType name identifier to fetch.</doc> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/> + </parameter> + <parameter name="language" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="205">language to fetch the name for.</doc> + <type name="language_t" c:type="hb_language_t"/> + </parameter> + <parameter name="text_size" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="206">input size of @text buffer, and output size of + text written to buffer.</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="text" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="208">buffer to write fetched name into.</doc> + <array length="3" zero-terminated="0" c:type="uint32_t*"> + <type name="guint32" c:type="uint32_t"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_name_get_utf8" + c:identifier="hb_ot_name_get_utf8" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="148">Fetches a font name from the OpenType 'name' table. +If @language is #HB_LANGUAGE_INVALID, English ("en") is assumed. +Returns string in UTF-8 encoding.</doc> + <source-position filename="../src/hb-ot-name.h" line="106"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="161">full length of the requested string, or 0 if not found.</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="150">font face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="name_id" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="151">OpenType name identifier to fetch.</doc> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/> + </parameter> + <parameter name="language" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="152">language to fetch the name for.</doc> + <type name="language_t" c:type="hb_language_t"/> + </parameter> + <parameter name="text_size" + direction="out" + caller-allocates="0" + transfer-ownership="full" + nullable="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="153">input size of @text buffer, and output size of + text written to buffer.</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="text" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="155">buffer to write fetched name into.</doc> + <array length="3" zero-terminated="0" c:type="char*"> + <type name="utf8" c:type="char"/> + </array> + </parameter> + </parameters> + </function> + <function name="ot_name_list_names" + c:identifier="hb_ot_name_list_names" + version="2.1.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="46">Enumerates all available name IDs and language combinations. Returned +array is owned by the @face and should not be modified. It can be +used as long as @face is alive.</doc> + <source-position filename="../src/hb-ot-name.h" line="101"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="55">Array of available name entries.</doc> + <array length="1" + zero-terminated="0" + c:type="const hb_ot_name_entry_t*"> + <type name="ot_name_entry_t" c:type="hb_ot_name_entry_t"/> + </array> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="48">font face.</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="num_entries" + direction="out" + caller-allocates="0" + transfer-ownership="full" + optional="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-name.cc" + line="49">number of returned entries.</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="ot_shape_glyphs_closure" + c:identifier="hb_ot_shape_glyphs_closure" + version="0.9.2"> + <source-position filename="../src/hb-ot-shape.h" line="40"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="buffer" transfer-ownership="none"> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="features" transfer-ownership="none"> + <type name="feature_t" c:type="const hb_feature_t*"/> + </parameter> + <parameter name="num_features" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="glyphs" transfer-ownership="none"> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_tag_from_language" + c:identifier="hb_ot_tag_from_language"> + <source-position filename="../src/hb-ot-deprecated.h" line="68"/> + <return-value transfer-ownership="none"> + <type name="tag_t" c:type="hb_tag_t"/> + </return-value> + <parameters> + <parameter name="language" transfer-ownership="none"> + <type name="language_t" c:type="hb_language_t"/> + </parameter> + </parameters> + </function> + <function name="ot_tag_to_language" + c:identifier="hb_ot_tag_to_language" + version="0.9.2"> + <source-position filename="../src/hb-ot-layout.h" line="80"/> + <return-value transfer-ownership="none"> + <type name="language_t" c:type="hb_language_t"/> + </return-value> + <parameters> + <parameter name="tag" transfer-ownership="none"> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + </parameters> + </function> + <function name="ot_tag_to_script" c:identifier="hb_ot_tag_to_script"> + <source-position filename="../src/hb-ot-layout.h" line="77"/> + <return-value transfer-ownership="none"> + <type name="script_t" c:type="hb_script_t"/> + </return-value> + <parameters> + <parameter name="tag" transfer-ownership="none"> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + </parameters> + </function> + <function name="ot_tags_from_script" c:identifier="hb_ot_tags_from_script"> + <source-position filename="../src/hb-ot-deprecated.h" line="63"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="script" transfer-ownership="none"> + <type name="script_t" c:type="hb_script_t"/> + </parameter> + <parameter name="script_tag_1" transfer-ownership="none"> + <type name="tag_t" c:type="hb_tag_t*"/> + </parameter> + <parameter name="script_tag_2" transfer-ownership="none"> + <type name="tag_t" c:type="hb_tag_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_tags_from_script_and_language" + c:identifier="hb_ot_tags_from_script_and_language" + version="2.0.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-tag.cc" + line="349">Converts an #hb_script_t and an #hb_language_t to script and language tags.</doc> + <source-position filename="../src/hb-ot-layout.h" line="69"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="script" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-tag.cc" + line="351">an #hb_script_t to convert.</doc> + <type name="script_t" c:type="hb_script_t"/> + </parameter> + <parameter name="language" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-tag.cc" + line="352">an #hb_language_t to convert.</doc> + <type name="language_t" c:type="hb_language_t"/> + </parameter> + <parameter name="script_count" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-tag.cc" + line="353">maximum number of script tags to retrieve (IN) +and actual number of script tags retrieved (OUT)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="script_tags" + direction="out" + caller-allocates="0" + transfer-ownership="full" + optional="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-tag.cc" + line="355">array of size at least @script_count to store the +script tag results</doc> + <type name="tag_t" c:type="hb_tag_t*"/> + </parameter> + <parameter name="language_count" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-tag.cc" + line="357">maximum number of language tags to retrieve +(IN) and actual number of language tags retrieved (OUT)</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="language_tags" + direction="out" + caller-allocates="0" + transfer-ownership="full" + optional="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-tag.cc" + line="359">array of size at least @language_count to store +the language tag results</doc> + <type name="tag_t" c:type="hb_tag_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_tags_to_script_and_language" + c:identifier="hb_ot_tags_to_script_and_language" + version="2.0.0"> + <doc xml:space="preserve" + filename="../src/hb-ot-tag.cc" + line="476">Converts a script tag and a language tag to an #hb_script_t and an +#hb_language_t.</doc> + <source-position filename="../src/hb-ot-layout.h" line="83"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="script_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-tag.cc" + line="478">a script tag</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="language_tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-tag.cc" + line="479">a language tag</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="script" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-tag.cc" + line="480">the #hb_script_t corresponding to @script_tag (OUT).</doc> + <type name="script_t" c:type="hb_script_t*"/> + </parameter> + <parameter name="language" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-ot-tag.cc" + line="481">the #hb_language_t corresponding to @script_tag and +@language_tag (OUT).</doc> + <type name="language_t" c:type="hb_language_t*"/> + </parameter> + </parameters> + </function> + <bitfield name="ot_var_axis_flags_t" + version="2.2.0" + glib:type-name="hb_ot_var_axis_flags_t" + glib:get-type="hb_gobject_ot_var_axis_flags_get_type" + c:type="hb_ot_var_axis_flags_t"> + <member name="hidden" + value="1" + c:identifier="HB_OT_VAR_AXIS_FLAG_HIDDEN" + glib:nick="hidden"> + <doc xml:space="preserve" + filename="../src/hb-ot-var.h" + line="64">The axis should not be exposed directly in user interfaces.</doc> + </member> + </bitfield> + <record name="ot_var_axis_info_t" + c:type="hb_ot_var_axis_info_t" + version="2.2.0"> + <source-position filename="../src/hb-ot-var.h" line="90"/> + <field name="axis_index" writable="1"> + <type name="guint" c:type="unsigned int"/> + </field> + <field name="tag" writable="1"> + <type name="tag_t" c:type="hb_tag_t"/> + </field> + <field name="name_id" writable="1"> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/> + </field> + <field name="flags" writable="1"> + <type name="ot_var_axis_flags_t" c:type="hb_ot_var_axis_flags_t"/> + </field> + <field name="min_value" writable="1"> + <type name="gfloat" c:type="float"/> + </field> + <field name="default_value" writable="1"> + <type name="gfloat" c:type="float"/> + </field> + <field name="max_value" writable="1"> + <type name="gfloat" c:type="float"/> + </field> + <field name="reserved" readable="0" private="1"> + <type name="guint" c:type="unsigned int"/> + </field> + </record> + <record name="ot_var_axis_t" + c:type="hb_ot_var_axis_t" + version="1.4.2" + deprecated="1" + deprecated-version="2.2.0"> + <source-position filename="../src/hb-ot-deprecated.h" line="92"/> + <field name="tag" writable="1"> + <type name="tag_t" c:type="hb_tag_t"/> + </field> + <field name="name_id" writable="1"> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/> + </field> + <field name="min_value" writable="1"> + <type name="gfloat" c:type="float"/> + </field> + <field name="default_value" writable="1"> + <type name="gfloat" c:type="float"/> + </field> + <field name="max_value" writable="1"> + <type name="gfloat" c:type="float"/> + </field> + </record> + <function name="ot_var_find_axis" + c:identifier="hb_ot_var_find_axis" + version="1.4.2" + deprecated="1" + deprecated-version="2.2.0"> + <source-position filename="../src/hb-ot-deprecated.h" line="101"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="axis_tag" transfer-ownership="none"> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="axis_index" transfer-ownership="none"> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="axis_info" transfer-ownership="none"> + <type name="ot_var_axis_t" c:type="hb_ot_var_axis_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_var_find_axis_info" + c:identifier="hb_ot_var_find_axis_info" + version="2.2.0"> + <source-position filename="../src/hb-ot-var.h" line="99"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="axis_tag" transfer-ownership="none"> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="axis_info" transfer-ownership="none"> + <type name="ot_var_axis_info_t" c:type="hb_ot_var_axis_info_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_var_get_axes" + c:identifier="hb_ot_var_get_axes" + version="1.4.2" + deprecated="1" + deprecated-version="2.2.0"> + <source-position filename="../src/hb-ot-deprecated.h" line="95"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="axes_count" transfer-ownership="none"> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="axes_array" transfer-ownership="none"> + <type name="ot_var_axis_t" c:type="hb_ot_var_axis_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_var_get_axis_count" + c:identifier="hb_ot_var_get_axis_count" + version="1.4.2"> + <source-position filename="../src/hb-ot-var.h" line="60"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_var_get_axis_infos" + c:identifier="hb_ot_var_get_axis_infos" + version="2.2.0"> + <source-position filename="../src/hb-ot-var.h" line="93"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="start_offset" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="axes_count" transfer-ownership="none"> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="axes_array" transfer-ownership="none"> + <type name="ot_var_axis_info_t" c:type="hb_ot_var_axis_info_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_var_get_named_instance_count" + c:identifier="hb_ot_var_get_named_instance_count"> + <source-position filename="../src/hb-ot-var.h" line="109"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_var_has_data" + c:identifier="hb_ot_var_has_data" + version="1.4.2"> + <doc xml:space="preserve" + filename="../src/hb-ot-var.cc" + line="53">This function allows to verify the presence of OpenType variation data on the face.</doc> + <source-position filename="../src/hb-ot-var.h" line="51"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-var.cc" + line="59">true if face has a `fvar' table and false otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-ot-var.cc" + line="55">#hb_face_t to test</doc> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + </parameters> + </function> + <function name="ot_var_named_instance_get_design_coords" + c:identifier="hb_ot_var_named_instance_get_design_coords"> + <source-position filename="../src/hb-ot-var.h" line="120"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="instance_index" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="coords_length" transfer-ownership="none"> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="coords" transfer-ownership="none"> + <type name="gfloat" c:type="float*"/> + </parameter> + </parameters> + </function> + <function name="ot_var_named_instance_get_postscript_name_id" + c:identifier="hb_ot_var_named_instance_get_postscript_name_id"> + <source-position filename="../src/hb-ot-var.h" line="116"/> + <return-value transfer-ownership="none"> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="instance_index" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="ot_var_named_instance_get_subfamily_name_id" + c:identifier="hb_ot_var_named_instance_get_subfamily_name_id"> + <source-position filename="../src/hb-ot-var.h" line="112"/> + <return-value transfer-ownership="none"> + <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="instance_index" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="ot_var_normalize_coords" + c:identifier="hb_ot_var_normalize_coords" + version="1.4.2"> + <source-position filename="../src/hb-ot-var.h" line="138"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="coords_length" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="design_coords" transfer-ownership="none"> + <type name="gfloat" c:type="const float*"/> + </parameter> + <parameter name="normalized_coords" transfer-ownership="none"> + <type name="gint" c:type="int*"/> + </parameter> + </parameters> + </function> + <function name="ot_var_normalize_variations" + c:identifier="hb_ot_var_normalize_variations" + version="1.4.2"> + <source-position filename="../src/hb-ot-var.h" line="131"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="variations" transfer-ownership="none"> + <type name="variation_t" c:type="const hb_variation_t*"/> + </parameter> + <parameter name="variations_length" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="coords" transfer-ownership="none"> + <type name="gint" c:type="int*"/> + </parameter> + <parameter name="coords_length" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <callback name="reference_table_func_t" c:type="hb_reference_table_func_t"> + <source-position filename="../src/hb-face.h" line="55"/> + <return-value transfer-ownership="full"> + <type name="blob_t" c:type="hb_blob_t*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="tag" transfer-ownership="none"> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="2"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="script_from_iso15924_tag" + c:identifier="hb_script_from_iso15924_tag" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="422">Converts an ISO 15924 script tag to a corresponding #hb_script_t.</doc> + <source-position filename="../src/hb-common.h" line="399"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="428">An #hb_script_t corresponding to the ISO 15924 tag.</doc> + <type name="script_t" c:type="hb_script_t"/> + </return-value> + <parameters> + <parameter name="tag" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="424">an #hb_tag_t representing an ISO 15924 tag.</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + </parameters> + </function> + <function name="script_from_string" + c:identifier="hb_script_from_string" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="467">Converts a string @str representing an ISO 15924 script tag to a +corresponding #hb_script_t. Shorthand for hb_tag_from_string() then +hb_script_from_iso15924_tag().</doc> + <source-position filename="../src/hb-common.h" line="402"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="477">An #hb_script_t corresponding to the ISO 15924 tag.</doc> + <type name="script_t" c:type="hb_script_t"/> + </return-value> + <parameters> + <parameter name="str" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="469">a string representing an + ISO 15924 tag.</doc> + <array length="1" zero-terminated="0" c:type="const char*"> + <type name="guint8"/> + </array> + </parameter> + <parameter name="len" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="471">length of the @str, or -1 if it is %NULL-terminated.</doc> + <type name="gint" c:type="int"/> + </parameter> + </parameters> + </function> + <function name="script_get_horizontal_direction" + c:identifier="hb_script_get_horizontal_direction" + version="0.9.2"> + <source-position filename="../src/hb-common.h" line="408"/> + <return-value transfer-ownership="none"> + <type name="direction_t" c:type="hb_direction_t"/> + </return-value> + <parameters> + <parameter name="script" transfer-ownership="none"> + <type name="script_t" c:type="hb_script_t"/> + </parameter> + </parameters> + </function> + <enumeration name="script_t" + glib:type-name="hb_script_t" + glib:get-type="hb_gobject_script_get_type" + c:type="hb_script_t"> + <member name="common" + value="1517910393" + c:identifier="HB_SCRIPT_COMMON" + glib:nick="common"> + </member> + <member name="inherited" + value="1516858984" + c:identifier="HB_SCRIPT_INHERITED" + glib:nick="inherited"> + </member> + <member name="unknown" + value="1517976186" + c:identifier="HB_SCRIPT_UNKNOWN" + glib:nick="unknown"> + </member> + <member name="arabic" + value="1098015074" + c:identifier="HB_SCRIPT_ARABIC" + glib:nick="arabic"> + </member> + <member name="armenian" + value="1098018158" + c:identifier="HB_SCRIPT_ARMENIAN" + glib:nick="armenian"> + </member> + <member name="bengali" + value="1113943655" + c:identifier="HB_SCRIPT_BENGALI" + glib:nick="bengali"> + </member> + <member name="cyrillic" + value="1132032620" + c:identifier="HB_SCRIPT_CYRILLIC" + glib:nick="cyrillic"> + </member> + <member name="devanagari" + value="1147500129" + c:identifier="HB_SCRIPT_DEVANAGARI" + glib:nick="devanagari"> + </member> + <member name="georgian" + value="1197830002" + c:identifier="HB_SCRIPT_GEORGIAN" + glib:nick="georgian"> + </member> + <member name="greek" + value="1198679403" + c:identifier="HB_SCRIPT_GREEK" + glib:nick="greek"> + </member> + <member name="gujarati" + value="1198877298" + c:identifier="HB_SCRIPT_GUJARATI" + glib:nick="gujarati"> + </member> + <member name="gurmukhi" + value="1198879349" + c:identifier="HB_SCRIPT_GURMUKHI" + glib:nick="gurmukhi"> + </member> + <member name="hangul" + value="1214344807" + c:identifier="HB_SCRIPT_HANGUL" + glib:nick="hangul"> + </member> + <member name="han" + value="1214344809" + c:identifier="HB_SCRIPT_HAN" + glib:nick="han"> + </member> + <member name="hebrew" + value="1214603890" + c:identifier="HB_SCRIPT_HEBREW" + glib:nick="hebrew"> + </member> + <member name="hiragana" + value="1214870113" + c:identifier="HB_SCRIPT_HIRAGANA" + glib:nick="hiragana"> + </member> + <member name="kannada" + value="1265525857" + c:identifier="HB_SCRIPT_KANNADA" + glib:nick="kannada"> + </member> + <member name="katakana" + value="1264676449" + c:identifier="HB_SCRIPT_KATAKANA" + glib:nick="katakana"> + </member> + <member name="lao" + value="1281453935" + c:identifier="HB_SCRIPT_LAO" + glib:nick="lao"> + </member> + <member name="latin" + value="1281455214" + c:identifier="HB_SCRIPT_LATIN" + glib:nick="latin"> + </member> + <member name="malayalam" + value="1298954605" + c:identifier="HB_SCRIPT_MALAYALAM" + glib:nick="malayalam"> + </member> + <member name="oriya" + value="1332902241" + c:identifier="HB_SCRIPT_ORIYA" + glib:nick="oriya"> + </member> + <member name="tamil" + value="1415671148" + c:identifier="HB_SCRIPT_TAMIL" + glib:nick="tamil"> + </member> + <member name="telugu" + value="1415933045" + c:identifier="HB_SCRIPT_TELUGU" + glib:nick="telugu"> + </member> + <member name="thai" + value="1416126825" + c:identifier="HB_SCRIPT_THAI" + glib:nick="thai"> + </member> + <member name="tibetan" + value="1416192628" + c:identifier="HB_SCRIPT_TIBETAN" + glib:nick="tibetan"> + </member> + <member name="bopomofo" + value="1114599535" + c:identifier="HB_SCRIPT_BOPOMOFO" + glib:nick="bopomofo"> + </member> + <member name="braille" + value="1114792297" + c:identifier="HB_SCRIPT_BRAILLE" + glib:nick="braille"> + </member> + <member name="canadian_syllabics" + value="1130458739" + c:identifier="HB_SCRIPT_CANADIAN_SYLLABICS" + glib:nick="canadian-syllabics"> + </member> + <member name="cherokee" + value="1130915186" + c:identifier="HB_SCRIPT_CHEROKEE" + glib:nick="cherokee"> + </member> + <member name="ethiopic" + value="1165256809" + c:identifier="HB_SCRIPT_ETHIOPIC" + glib:nick="ethiopic"> + </member> + <member name="khmer" + value="1265134962" + c:identifier="HB_SCRIPT_KHMER" + glib:nick="khmer"> + </member> + <member name="mongolian" + value="1299148391" + c:identifier="HB_SCRIPT_MONGOLIAN" + glib:nick="mongolian"> + </member> + <member name="myanmar" + value="1299803506" + c:identifier="HB_SCRIPT_MYANMAR" + glib:nick="myanmar"> + </member> + <member name="ogham" + value="1332175213" + c:identifier="HB_SCRIPT_OGHAM" + glib:nick="ogham"> + </member> + <member name="runic" + value="1383427698" + c:identifier="HB_SCRIPT_RUNIC" + glib:nick="runic"> + </member> + <member name="sinhala" + value="1399418472" + c:identifier="HB_SCRIPT_SINHALA" + glib:nick="sinhala"> + </member> + <member name="syriac" + value="1400468067" + c:identifier="HB_SCRIPT_SYRIAC" + glib:nick="syriac"> + </member> + <member name="thaana" + value="1416126817" + c:identifier="HB_SCRIPT_THAANA" + glib:nick="thaana"> + </member> + <member name="yi" + value="1500080489" + c:identifier="HB_SCRIPT_YI" + glib:nick="yi"> + </member> + <member name="deseret" + value="1148416628" + c:identifier="HB_SCRIPT_DESERET" + glib:nick="deseret"> + </member> + <member name="gothic" + value="1198486632" + c:identifier="HB_SCRIPT_GOTHIC" + glib:nick="gothic"> + </member> + <member name="old_italic" + value="1232363884" + c:identifier="HB_SCRIPT_OLD_ITALIC" + glib:nick="old-italic"> + </member> + <member name="buhid" + value="1114990692" + c:identifier="HB_SCRIPT_BUHID" + glib:nick="buhid"> + </member> + <member name="hanunoo" + value="1214344815" + c:identifier="HB_SCRIPT_HANUNOO" + glib:nick="hanunoo"> + </member> + <member name="tagalog" + value="1416064103" + c:identifier="HB_SCRIPT_TAGALOG" + glib:nick="tagalog"> + </member> + <member name="tagbanwa" + value="1415669602" + c:identifier="HB_SCRIPT_TAGBANWA" + glib:nick="tagbanwa"> + </member> + <member name="cypriot" + value="1131442804" + c:identifier="HB_SCRIPT_CYPRIOT" + glib:nick="cypriot"> + </member> + <member name="limbu" + value="1281977698" + c:identifier="HB_SCRIPT_LIMBU" + glib:nick="limbu"> + </member> + <member name="linear_b" + value="1281977954" + c:identifier="HB_SCRIPT_LINEAR_B" + glib:nick="linear-b"> + </member> + <member name="osmanya" + value="1332964705" + c:identifier="HB_SCRIPT_OSMANYA" + glib:nick="osmanya"> + </member> + <member name="shavian" + value="1399349623" + c:identifier="HB_SCRIPT_SHAVIAN" + glib:nick="shavian"> + </member> + <member name="tai_le" + value="1415670885" + c:identifier="HB_SCRIPT_TAI_LE" + glib:nick="tai-le"> + </member> + <member name="ugaritic" + value="1432838514" + c:identifier="HB_SCRIPT_UGARITIC" + glib:nick="ugaritic"> + </member> + <member name="buginese" + value="1114990441" + c:identifier="HB_SCRIPT_BUGINESE" + glib:nick="buginese"> + </member> + <member name="coptic" + value="1131376756" + c:identifier="HB_SCRIPT_COPTIC" + glib:nick="coptic"> + </member> + <member name="glagolitic" + value="1198285159" + c:identifier="HB_SCRIPT_GLAGOLITIC" + glib:nick="glagolitic"> + </member> + <member name="kharoshthi" + value="1265131890" + c:identifier="HB_SCRIPT_KHAROSHTHI" + glib:nick="kharoshthi"> + </member> + <member name="new_tai_lue" + value="1415670901" + c:identifier="HB_SCRIPT_NEW_TAI_LUE" + glib:nick="new-tai-lue"> + </member> + <member name="old_persian" + value="1483761007" + c:identifier="HB_SCRIPT_OLD_PERSIAN" + glib:nick="old-persian"> + </member> + <member name="syloti_nagri" + value="1400466543" + c:identifier="HB_SCRIPT_SYLOTI_NAGRI" + glib:nick="syloti-nagri"> + </member> + <member name="tifinagh" + value="1415999079" + c:identifier="HB_SCRIPT_TIFINAGH" + glib:nick="tifinagh"> + </member> + <member name="balinese" + value="1113681001" + c:identifier="HB_SCRIPT_BALINESE" + glib:nick="balinese"> + </member> + <member name="cuneiform" + value="1483961720" + c:identifier="HB_SCRIPT_CUNEIFORM" + glib:nick="cuneiform"> + </member> + <member name="nko" + value="1315663727" + c:identifier="HB_SCRIPT_NKO" + glib:nick="nko"> + </member> + <member name="phags_pa" + value="1349017959" + c:identifier="HB_SCRIPT_PHAGS_PA" + glib:nick="phags-pa"> + </member> + <member name="phoenician" + value="1349021304" + c:identifier="HB_SCRIPT_PHOENICIAN" + glib:nick="phoenician"> + </member> + <member name="carian" + value="1130459753" + c:identifier="HB_SCRIPT_CARIAN" + glib:nick="carian"> + </member> + <member name="cham" + value="1130914157" + c:identifier="HB_SCRIPT_CHAM" + glib:nick="cham"> + </member> + <member name="kayah_li" + value="1264675945" + c:identifier="HB_SCRIPT_KAYAH_LI" + glib:nick="kayah-li"> + </member> + <member name="lepcha" + value="1281716323" + c:identifier="HB_SCRIPT_LEPCHA" + glib:nick="lepcha"> + </member> + <member name="lycian" + value="1283023721" + c:identifier="HB_SCRIPT_LYCIAN" + glib:nick="lycian"> + </member> + <member name="lydian" + value="1283023977" + c:identifier="HB_SCRIPT_LYDIAN" + glib:nick="lydian"> + </member> + <member name="ol_chiki" + value="1332503403" + c:identifier="HB_SCRIPT_OL_CHIKI" + glib:nick="ol-chiki"> + </member> + <member name="rejang" + value="1382706791" + c:identifier="HB_SCRIPT_REJANG" + glib:nick="rejang"> + </member> + <member name="saurashtra" + value="1398895986" + c:identifier="HB_SCRIPT_SAURASHTRA" + glib:nick="saurashtra"> + </member> + <member name="sundanese" + value="1400204900" + c:identifier="HB_SCRIPT_SUNDANESE" + glib:nick="sundanese"> + </member> + <member name="vai" + value="1449224553" + c:identifier="HB_SCRIPT_VAI" + glib:nick="vai"> + </member> + <member name="avestan" + value="1098281844" + c:identifier="HB_SCRIPT_AVESTAN" + glib:nick="avestan"> + </member> + <member name="bamum" + value="1113681269" + c:identifier="HB_SCRIPT_BAMUM" + glib:nick="bamum"> + </member> + <member name="egyptian_hieroglyphs" + value="1164409200" + c:identifier="HB_SCRIPT_EGYPTIAN_HIEROGLYPHS" + glib:nick="egyptian-hieroglyphs"> + </member> + <member name="imperial_aramaic" + value="1098018153" + c:identifier="HB_SCRIPT_IMPERIAL_ARAMAIC" + glib:nick="imperial-aramaic"> + </member> + <member name="inscriptional_pahlavi" + value="1349020777" + c:identifier="HB_SCRIPT_INSCRIPTIONAL_PAHLAVI" + glib:nick="inscriptional-pahlavi"> + </member> + <member name="inscriptional_parthian" + value="1349678185" + c:identifier="HB_SCRIPT_INSCRIPTIONAL_PARTHIAN" + glib:nick="inscriptional-parthian"> + </member> + <member name="javanese" + value="1247901281" + c:identifier="HB_SCRIPT_JAVANESE" + glib:nick="javanese"> + </member> + <member name="kaithi" + value="1265920105" + c:identifier="HB_SCRIPT_KAITHI" + glib:nick="kaithi"> + </member> + <member name="lisu" + value="1281979253" + c:identifier="HB_SCRIPT_LISU" + glib:nick="lisu"> + </member> + <member name="meetei_mayek" + value="1299473769" + c:identifier="HB_SCRIPT_MEETEI_MAYEK" + glib:nick="meetei-mayek"> + </member> + <member name="old_south_arabian" + value="1398895202" + c:identifier="HB_SCRIPT_OLD_SOUTH_ARABIAN" + glib:nick="old-south-arabian"> + </member> + <member name="old_turkic" + value="1332898664" + c:identifier="HB_SCRIPT_OLD_TURKIC" + glib:nick="old-turkic"> + </member> + <member name="samaritan" + value="1398893938" + c:identifier="HB_SCRIPT_SAMARITAN" + glib:nick="samaritan"> + </member> + <member name="tai_tham" + value="1281453665" + c:identifier="HB_SCRIPT_TAI_THAM" + glib:nick="tai-tham"> + </member> + <member name="tai_viet" + value="1415673460" + c:identifier="HB_SCRIPT_TAI_VIET" + glib:nick="tai-viet"> + </member> + <member name="batak" + value="1113683051" + c:identifier="HB_SCRIPT_BATAK" + glib:nick="batak"> + </member> + <member name="brahmi" + value="1114792296" + c:identifier="HB_SCRIPT_BRAHMI" + glib:nick="brahmi"> + </member> + <member name="mandaic" + value="1298230884" + c:identifier="HB_SCRIPT_MANDAIC" + glib:nick="mandaic"> + </member> + <member name="chakma" + value="1130457965" + c:identifier="HB_SCRIPT_CHAKMA" + glib:nick="chakma"> + </member> + <member name="meroitic_cursive" + value="1298494051" + c:identifier="HB_SCRIPT_MEROITIC_CURSIVE" + glib:nick="meroitic-cursive"> + </member> + <member name="meroitic_hieroglyphs" + value="1298494063" + c:identifier="HB_SCRIPT_MEROITIC_HIEROGLYPHS" + glib:nick="meroitic-hieroglyphs"> + </member> + <member name="miao" + value="1349284452" + c:identifier="HB_SCRIPT_MIAO" + glib:nick="miao"> + </member> + <member name="sharada" + value="1399353956" + c:identifier="HB_SCRIPT_SHARADA" + glib:nick="sharada"> + </member> + <member name="sora_sompeng" + value="1399812705" + c:identifier="HB_SCRIPT_SORA_SOMPENG" + glib:nick="sora-sompeng"> + </member> + <member name="takri" + value="1415670642" + c:identifier="HB_SCRIPT_TAKRI" + glib:nick="takri"> + </member> + <member name="bassa_vah" + value="1113682803" + c:identifier="HB_SCRIPT_BASSA_VAH" + glib:nick="bassa-vah"> + </member> + <member name="caucasian_albanian" + value="1097295970" + c:identifier="HB_SCRIPT_CAUCASIAN_ALBANIAN" + glib:nick="caucasian-albanian"> + </member> + <member name="duployan" + value="1148547180" + c:identifier="HB_SCRIPT_DUPLOYAN" + glib:nick="duployan"> + </member> + <member name="elbasan" + value="1164730977" + c:identifier="HB_SCRIPT_ELBASAN" + glib:nick="elbasan"> + </member> + <member name="grantha" + value="1198678382" + c:identifier="HB_SCRIPT_GRANTHA" + glib:nick="grantha"> + </member> + <member name="khojki" + value="1265135466" + c:identifier="HB_SCRIPT_KHOJKI" + glib:nick="khojki"> + </member> + <member name="khudawadi" + value="1399418468" + c:identifier="HB_SCRIPT_KHUDAWADI" + glib:nick="khudawadi"> + </member> + <member name="linear_a" + value="1281977953" + c:identifier="HB_SCRIPT_LINEAR_A" + glib:nick="linear-a"> + </member> + <member name="mahajani" + value="1298229354" + c:identifier="HB_SCRIPT_MAHAJANI" + glib:nick="mahajani"> + </member> + <member name="manichaean" + value="1298230889" + c:identifier="HB_SCRIPT_MANICHAEAN" + glib:nick="manichaean"> + </member> + <member name="mende_kikakui" + value="1298493028" + c:identifier="HB_SCRIPT_MENDE_KIKAKUI" + glib:nick="mende-kikakui"> + </member> + <member name="modi" + value="1299145833" + c:identifier="HB_SCRIPT_MODI" + glib:nick="modi"> + </member> + <member name="mro" + value="1299345263" + c:identifier="HB_SCRIPT_MRO" + glib:nick="mro"> + </member> + <member name="nabataean" + value="1315070324" + c:identifier="HB_SCRIPT_NABATAEAN" + glib:nick="nabataean"> + </member> + <member name="old_north_arabian" + value="1315009122" + c:identifier="HB_SCRIPT_OLD_NORTH_ARABIAN" + glib:nick="old-north-arabian"> + </member> + <member name="old_permic" + value="1348825709" + c:identifier="HB_SCRIPT_OLD_PERMIC" + glib:nick="old-permic"> + </member> + <member name="pahawh_hmong" + value="1215131239" + c:identifier="HB_SCRIPT_PAHAWH_HMONG" + glib:nick="pahawh-hmong"> + </member> + <member name="palmyrene" + value="1348562029" + c:identifier="HB_SCRIPT_PALMYRENE" + glib:nick="palmyrene"> + </member> + <member name="pau_cin_hau" + value="1348564323" + c:identifier="HB_SCRIPT_PAU_CIN_HAU" + glib:nick="pau-cin-hau"> + </member> + <member name="psalter_pahlavi" + value="1349020784" + c:identifier="HB_SCRIPT_PSALTER_PAHLAVI" + glib:nick="psalter-pahlavi"> + </member> + <member name="siddham" + value="1399415908" + c:identifier="HB_SCRIPT_SIDDHAM" + glib:nick="siddham"> + </member> + <member name="tirhuta" + value="1416196712" + c:identifier="HB_SCRIPT_TIRHUTA" + glib:nick="tirhuta"> + </member> + <member name="warang_citi" + value="1466004065" + c:identifier="HB_SCRIPT_WARANG_CITI" + glib:nick="warang-citi"> + </member> + <member name="ahom" + value="1097363309" + c:identifier="HB_SCRIPT_AHOM" + glib:nick="ahom"> + </member> + <member name="anatolian_hieroglyphs" + value="1215067511" + c:identifier="HB_SCRIPT_ANATOLIAN_HIEROGLYPHS" + glib:nick="anatolian-hieroglyphs"> + </member> + <member name="hatran" + value="1214346354" + c:identifier="HB_SCRIPT_HATRAN" + glib:nick="hatran"> + </member> + <member name="multani" + value="1299541108" + c:identifier="HB_SCRIPT_MULTANI" + glib:nick="multani"> + </member> + <member name="old_hungarian" + value="1215655527" + c:identifier="HB_SCRIPT_OLD_HUNGARIAN" + glib:nick="old-hungarian"> + </member> + <member name="signwriting" + value="1399287415" + c:identifier="HB_SCRIPT_SIGNWRITING" + glib:nick="signwriting"> + </member> + <member name="adlam" + value="1097100397" + c:identifier="HB_SCRIPT_ADLAM" + glib:nick="adlam"> + </member> + <member name="bhaiksuki" + value="1114139507" + c:identifier="HB_SCRIPT_BHAIKSUKI" + glib:nick="bhaiksuki"> + </member> + <member name="marchen" + value="1298231907" + c:identifier="HB_SCRIPT_MARCHEN" + glib:nick="marchen"> + </member> + <member name="osage" + value="1332963173" + c:identifier="HB_SCRIPT_OSAGE" + glib:nick="osage"> + </member> + <member name="tangut" + value="1415671399" + c:identifier="HB_SCRIPT_TANGUT" + glib:nick="tangut"> + </member> + <member name="newa" + value="1315272545" + c:identifier="HB_SCRIPT_NEWA" + glib:nick="newa"> + </member> + <member name="masaram_gondi" + value="1198485101" + c:identifier="HB_SCRIPT_MASARAM_GONDI" + glib:nick="masaram-gondi"> + </member> + <member name="nushu" + value="1316186229" + c:identifier="HB_SCRIPT_NUSHU" + glib:nick="nushu"> + </member> + <member name="soyombo" + value="1399814511" + c:identifier="HB_SCRIPT_SOYOMBO" + glib:nick="soyombo"> + </member> + <member name="zanabazar_square" + value="1516334690" + c:identifier="HB_SCRIPT_ZANABAZAR_SQUARE" + glib:nick="zanabazar-square"> + </member> + <member name="dogra" + value="1148151666" + c:identifier="HB_SCRIPT_DOGRA" + glib:nick="dogra"> + </member> + <member name="gunjala_gondi" + value="1198485095" + c:identifier="HB_SCRIPT_GUNJALA_GONDI" + glib:nick="gunjala-gondi"> + </member> + <member name="hanifi_rohingya" + value="1383032935" + c:identifier="HB_SCRIPT_HANIFI_ROHINGYA" + glib:nick="hanifi-rohingya"> + </member> + <member name="makasar" + value="1298230113" + c:identifier="HB_SCRIPT_MAKASAR" + glib:nick="makasar"> + </member> + <member name="medefaidrin" + value="1298490470" + c:identifier="HB_SCRIPT_MEDEFAIDRIN" + glib:nick="medefaidrin"> + </member> + <member name="old_sogdian" + value="1399809903" + c:identifier="HB_SCRIPT_OLD_SOGDIAN" + glib:nick="old-sogdian"> + </member> + <member name="sogdian" + value="1399809892" + c:identifier="HB_SCRIPT_SOGDIAN" + glib:nick="sogdian"> + </member> + <member name="elymaic" + value="1164736877" + c:identifier="HB_SCRIPT_ELYMAIC" + glib:nick="elymaic"> + </member> + <member name="nandinagari" + value="1315008100" + c:identifier="HB_SCRIPT_NANDINAGARI" + glib:nick="nandinagari"> + </member> + <member name="nyiakeng_puachue_hmong" + value="1215131248" + c:identifier="HB_SCRIPT_NYIAKENG_PUACHUE_HMONG" + glib:nick="nyiakeng-puachue-hmong"> + </member> + <member name="wancho" + value="1466132591" + c:identifier="HB_SCRIPT_WANCHO" + glib:nick="wancho"> + </member> + <member name="chorasmian" + value="1130918515" + c:identifier="HB_SCRIPT_CHORASMIAN" + glib:nick="chorasmian"> + </member> + <member name="dives_akuru" + value="1147756907" + c:identifier="HB_SCRIPT_DIVES_AKURU" + glib:nick="dives-akuru"> + </member> + <member name="khitan_small_script" + value="1265202291" + c:identifier="HB_SCRIPT_KHITAN_SMALL_SCRIPT" + glib:nick="khitan-small-script"> + </member> + <member name="yezidi" + value="1499822697" + c:identifier="HB_SCRIPT_YEZIDI" + glib:nick="yezidi"> + </member> + <member name="invalid" + value="0" + c:identifier="HB_SCRIPT_INVALID" + glib:nick="invalid"> + </member> + </enumeration> + <function name="script_to_iso15924_tag" + c:identifier="hb_script_to_iso15924_tag" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="488">See hb_script_from_iso15924_tag().</doc> + <source-position filename="../src/hb-common.h" line="405"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="494">An #hb_tag_t representing an ISO 15924 script tag.</doc> + <type name="tag_t" c:type="hb_tag_t"/> + </return-value> + <parameters> + <parameter name="script" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="490">an #hb_script_t to convert.</doc> + <type name="script_t" c:type="hb_script_t"/> + </parameter> + </parameters> + </function> + <function name="segment_properties_equal" + c:identifier="hb_segment_properties_equal" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="45">Checks the equality of two #hb_segment_properties_t's.</doc> + <source-position filename="../src/hb-buffer.h" line="161"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="52">%true if all properties of @a equal those of @b, false otherwise.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="a" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="47">first #hb_segment_properties_t to compare.</doc> + <type name="segment_properties_t" + c:type="const hb_segment_properties_t*"/> + </parameter> + <parameter name="b" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="48">second #hb_segment_properties_t to compare.</doc> + <type name="segment_properties_t" + c:type="const hb_segment_properties_t*"/> + </parameter> + </parameters> + </function> + <function name="segment_properties_hash" + c:identifier="hb_segment_properties_hash" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="69">Creates a hash representing @p.</doc> + <source-position filename="../src/hb-buffer.h" line="165"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="75">A hash of @p.</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="p" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-buffer.cc" + line="71">#hb_segment_properties_t to hash.</doc> + <type name="segment_properties_t" + c:type="const hb_segment_properties_t*"/> + </parameter> + </parameters> + </function> + <record name="segment_properties_t" + c:type="hb_segment_properties_t" + glib:type-name="hb_segment_properties_t" + glib:get-type="hb_gobject_segment_properties_get_type" + c:symbol-prefix="gobject_segment_properties"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="135">The structure that holds various text properties of an #hb_buffer_t. Can be +set and retrieved using hb_buffer_set_segment_properties() and +hb_buffer_get_segment_properties(), respectively.</doc> + <source-position filename="../src/hb-buffer.h" line="152"/> + <field name="direction" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="137">the #hb_direction_t of the buffer, see hb_buffer_set_direction().</doc> + <type name="direction_t" c:type="hb_direction_t"/> + </field> + <field name="script" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="138">the #hb_script_t of the buffer, see hb_buffer_set_script().</doc> + <type name="script_t" c:type="hb_script_t"/> + </field> + <field name="language" writable="1"> + <doc xml:space="preserve" + filename="../src/hb-buffer.h" + line="139">the #hb_language_t of the buffer, see hb_buffer_set_language().</doc> + <type name="language_t" c:type="hb_language_t"/> + </field> + <field name="reserved1" readable="0" private="1"> + <type name="gpointer" c:type="void*"/> + </field> + <field name="reserved2" readable="0" private="1"> + <type name="gpointer" c:type="void*"/> + </field> + </record> + <function name="set_add" c:identifier="hb_set_add" version="0.9.2"> + <source-position filename="../src/hb-set.h" line="86"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="210">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="codepoint" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="set_add_range" + c:identifier="hb_set_add_range" + version="0.9.7"> + <source-position filename="../src/hb-set.h" line="90"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="226">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="first" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="last" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="set_allocation_successful" + c:identifier="hb_set_allocation_successful" + version="0.9.2"> + <source-position filename="../src/hb-set.h" line="73"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="146">a set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_clear" c:identifier="hb_set_clear" version="0.9.2"> + <source-position filename="../src/hb-set.h" line="76"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="162">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_create" c:identifier="hb_set_create" version="0.9.2"> + <source-position filename="../src/hb-set.h" line="48"/> + <return-value transfer-ownership="full"> + <type name="set_t" c:type="hb_set_t*"/> + </return-value> + </function> + <function name="set_del" c:identifier="hb_set_del" version="0.9.2"> + <source-position filename="../src/hb-set.h" line="95"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="244">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="codepoint" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="set_del_range" + c:identifier="hb_set_del_range" + version="0.9.7"> + <source-position filename="../src/hb-set.h" line="99"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="260">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="first" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="last" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="set_destroy" + c:identifier="hb_set_destroy" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-set.h" line="57"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="91">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_get_empty" + c:identifier="hb_set_get_empty" + version="0.9.2"> + <source-position filename="../src/hb-set.h" line="51"/> + <return-value transfer-ownership="full"> + <type name="set_t" c:type="hb_set_t*"/> + </return-value> + </function> + <function name="set_get_max" c:identifier="hb_set_get_max" version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="441">Finds the maximum number in the set.</doc> + <source-position filename="../src/hb-set.h" line="140"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="447">minimum of the set, or %HB_SET_VALUE_INVALID if set is empty.</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="443">a set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_get_min" c:identifier="hb_set_get_min" version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="425">Finds the minimum number in the set.</doc> + <source-position filename="../src/hb-set.h" line="136"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="431">minimum of the set, or %HB_SET_VALUE_INVALID if set is empty.</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="427">a set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_get_population" + c:identifier="hb_set_get_population" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="409">Returns the number of numbers in the set.</doc> + <source-position filename="../src/hb-set.h" line="132"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="415">set population.</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="411">a set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_get_user_data" + c:identifier="hb_set_get_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-set.h" line="67"/> + <return-value transfer-ownership="none" nullable="1"> + <type name="gpointer" c:type="void*"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="129">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + </parameters> + </function> + <function name="set_has" c:identifier="hb_set_has" version="0.9.2"> + <source-position filename="../src/hb-set.h" line="82"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="192">a set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + <parameter name="codepoint" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <function name="set_intersect" + c:identifier="hb_set_intersect" + version="0.9.2"> + <source-position filename="../src/hb-set.h" line="120"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="346">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="other" transfer-ownership="none"> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_invert" + c:identifier="hb_set_invert" + version="0.9.10" + deprecated="1" + deprecated-version="1.6.1"> + <source-position filename="../src/hb-deprecated.h" line="72"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="395">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_is_empty" + c:identifier="hb_set_is_empty" + version="0.9.7"> + <source-position filename="../src/hb-set.h" line="79"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="176">a set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_is_equal" + c:identifier="hb_set_is_equal" + version="0.9.7"> + <source-position filename="../src/hb-set.h" line="104"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="283">%TRUE if the two sets are equal, %FALSE otherwise.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="278">a set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + <parameter name="other" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="279">other set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_is_subset" + c:identifier="hb_set_is_subset" + version="1.8.1"> + <source-position filename="../src/hb-set.h" line="108"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="301">%TRUE if the @set is a subset of (or equal to) @larger_set, %FALSE otherwise.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="296">a set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + <parameter name="larger_set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="297">other set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_next" c:identifier="hb_set_next" version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="457">Gets the next number in @set that is greater than current value of @codepoint. + +Set @codepoint to %HB_SET_VALUE_INVALID to get started.</doc> + <source-position filename="../src/hb-set.h" line="144"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="466">whether there was a next value.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="459">a set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + <parameter name="codepoint" + direction="inout" + caller-allocates="0" + transfer-ownership="full"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + </parameters> + </function> + <function name="set_next_range" + c:identifier="hb_set_next_range" + version="0.9.7"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="497">Gets the next consecutive range of numbers in @set that +are greater than current value of @last. + +Set @last to %HB_SET_VALUE_INVALID to get started.</doc> + <source-position filename="../src/hb-set.h" line="154"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="508">whether there was a next range.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="499">a set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + <parameter name="first" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="500">output first codepoint in the range.</doc> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="last" + direction="inout" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="501">input current last and output last codepoint in the range.</doc> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + </parameters> + </function> + <function name="set_previous" + c:identifier="hb_set_previous" + version="1.8.0"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="477">Gets the previous number in @set that is lower than current value of @codepoint. + +Set @codepoint to %HB_SET_VALUE_INVALID to get started.</doc> + <source-position filename="../src/hb-set.h" line="149"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="486">whether there was a previous value.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="479">a set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + <parameter name="codepoint" + direction="inout" + caller-allocates="0" + transfer-ownership="full"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + </parameters> + </function> + <function name="set_previous_range" + c:identifier="hb_set_previous_range" + version="1.8.0"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="520">Gets the previous consecutive range of numbers in @set that +are less than current value of @first. + +Set @first to %HB_SET_VALUE_INVALID to get started.</doc> + <source-position filename="../src/hb-set.h" line="160"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="531">whether there was a previous range.</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="522">a set.</doc> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + <parameter name="first" + direction="inout" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="523">input current first and output first codepoint in the range.</doc> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="last" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="524">output last codepoint in the range.</doc> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + </parameters> + </function> + <function name="set_reference" + c:identifier="hb_set_reference" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-set.h" line="54"/> + <return-value transfer-ownership="full"> + <type name="set_t" c:type="hb_set_t*"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="77">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_set" c:identifier="hb_set_set" version="0.9.2"> + <source-position filename="../src/hb-set.h" line="112"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="314">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="other" transfer-ownership="none"> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_set_user_data" + c:identifier="hb_set_set_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-set.h" line="60"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="107">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + <parameter name="data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + <parameter name="replace" transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </parameter> + </parameters> + </function> + <function name="set_subtract" + c:identifier="hb_set_subtract" + version="0.9.2"> + <source-position filename="../src/hb-set.h" line="124"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="362">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="other" transfer-ownership="none"> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="set_symmetric_difference" + c:identifier="hb_set_symmetric_difference" + version="0.9.2"> + <source-position filename="../src/hb-set.h" line="128"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="378">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="other" transfer-ownership="none"> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + </parameters> + </function> + <record name="set_t" + c:type="hb_set_t" + glib:type-name="hb_set_t" + glib:get-type="hb_gobject_set_get_type" + c:symbol-prefix="gobject_set"> + <source-position filename="../src/hb-set.h" line="44"/> + </record> + <function name="set_union" c:identifier="hb_set_union" version="0.9.2"> + <source-position filename="../src/hb-set.h" line="116"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="set" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-set.cc" + line="330">a set.</doc> + <type name="set_t" c:type="hb_set_t*"/> + </parameter> + <parameter name="other" transfer-ownership="none"> + <type name="set_t" c:type="const hb_set_t*"/> + </parameter> + </parameters> + </function> + <function name="shape" c:identifier="hb_shape" version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="149">Shapes @buffer using @font turning its Unicode characters content to +positioned glyphs. If @features is not %NULL, it will be used to control the +features applied during shaping. If two @features have the same tag but +overlapping ranges the value of the feature with the higher index takes +precedence.</doc> + <source-position filename="../src/hb-shape.h" line="44"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="151">an #hb_font_t to use for shaping</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="152">an #hb_buffer_t to shape</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="features" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="153">an array of user + specified #hb_feature_t or %NULL</doc> + <array length="3" zero-terminated="0" c:type="const hb_feature_t*"> + <type name="feature_t" c:type="hb_feature_t"/> + </array> + </parameter> + <parameter name="num_features" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="155">the length of @features array</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="shape_full" c:identifier="hb_shape_full" version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="110">See hb_shape() for details. If @shaper_list is not %NULL, the specified +shapers will be used in the given order, otherwise the default shapers list +will be used.</doc> + <source-position filename="../src/hb-shape.h" line="50"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="124">false if all shapers failed, true otherwise</doc> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="112">an #hb_font_t to use for shaping</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="113">an #hb_buffer_t to shape</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="features" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="114">an array of user + specified #hb_feature_t or %NULL</doc> + <array length="3" zero-terminated="0" c:type="const hb_feature_t*"> + <type name="feature_t" c:type="hb_feature_t"/> + </array> + </parameter> + <parameter name="num_features" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="116">the length of @features array</doc> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="shaper_list" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="117">a %NULL-terminated + array of shapers to use or %NULL</doc> + <array c:type="const char* const*"> + <type name="utf8" c:type="char*"/> + </array> + </parameter> + </parameters> + </function> + <function name="shape_list_shapers" + c:identifier="hb_shape_list_shapers" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="93">Retrieves the list of shapers supported by HarfBuzz.</doc> + <source-position filename="../src/hb-shape.h" line="57"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape.cc" + line="98">an array of + constant strings</doc> + <array c:type="const char**"> + <type name="utf8"/> + </array> + </return-value> + </function> + <function name="shape_plan_create" + c:identifier="hb_shape_plan_create" + version="0.9.7"> + <source-position filename="../src/hb-shape-plan.h" line="42"/> + <return-value transfer-ownership="full"> + <type name="shape_plan_t" c:type="hb_shape_plan_t*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="props" transfer-ownership="none"> + <type name="segment_properties_t" + c:type="const hb_segment_properties_t*"/> + </parameter> + <parameter name="user_features" transfer-ownership="none"> + <array length="3" zero-terminated="0" c:type="const hb_feature_t*"> + <type name="feature_t" c:type="hb_feature_t"/> + </array> + </parameter> + <parameter name="num_user_features" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="shaper_list" transfer-ownership="none"> + <array c:type="const char* const*"> + <type name="utf8" c:type="char*"/> + </array> + </parameter> + </parameters> + </function> + <function name="shape_plan_create2" c:identifier="hb_shape_plan_create2"> + <source-position filename="../src/hb-shape-plan.h" line="56"/> + <return-value transfer-ownership="full"> + <type name="shape_plan_t" c:type="hb_shape_plan_t*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="props" transfer-ownership="none"> + <type name="segment_properties_t" + c:type="const hb_segment_properties_t*"/> + </parameter> + <parameter name="user_features" transfer-ownership="none"> + <type name="feature_t" c:type="const hb_feature_t*"/> + </parameter> + <parameter name="num_user_features" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="coords" transfer-ownership="none"> + <type name="gint" c:type="const int*"/> + </parameter> + <parameter name="num_coords" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="shaper_list" transfer-ownership="none"> + <type name="utf8" c:type="const char* const*"/> + </parameter> + </parameters> + </function> + <function name="shape_plan_create_cached" + c:identifier="hb_shape_plan_create_cached" + version="0.9.7"> + <source-position filename="../src/hb-shape-plan.h" line="49"/> + <return-value transfer-ownership="full"> + <type name="shape_plan_t" c:type="hb_shape_plan_t*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="props" transfer-ownership="none"> + <type name="segment_properties_t" + c:type="const hb_segment_properties_t*"/> + </parameter> + <parameter name="user_features" transfer-ownership="none"> + <array length="3" zero-terminated="0" c:type="const hb_feature_t*"> + <type name="feature_t" c:type="hb_feature_t"/> + </array> + </parameter> + <parameter name="num_user_features" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="shaper_list" transfer-ownership="none"> + <array c:type="const char* const*"> + <type name="utf8" c:type="char*"/> + </array> + </parameter> + </parameters> + </function> + <function name="shape_plan_create_cached2" + c:identifier="hb_shape_plan_create_cached2"> + <source-position filename="../src/hb-shape-plan.h" line="65"/> + <return-value transfer-ownership="full"> + <type name="shape_plan_t" c:type="hb_shape_plan_t*"/> + </return-value> + <parameters> + <parameter name="face" transfer-ownership="none"> + <type name="face_t" c:type="hb_face_t*"/> + </parameter> + <parameter name="props" transfer-ownership="none"> + <type name="segment_properties_t" + c:type="const hb_segment_properties_t*"/> + </parameter> + <parameter name="user_features" transfer-ownership="none"> + <type name="feature_t" c:type="const hb_feature_t*"/> + </parameter> + <parameter name="num_user_features" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="coords" transfer-ownership="none"> + <type name="gint" c:type="const int*"/> + </parameter> + <parameter name="num_coords" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="shaper_list" transfer-ownership="none"> + <type name="utf8" c:type="const char* const*"/> + </parameter> + </parameters> + </function> + <function name="shape_plan_destroy" + c:identifier="hb_shape_plan_destroy" + version="0.9.7" + introspectable="0"> + <source-position filename="../src/hb-shape-plan.h" line="81"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="shape_plan" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape-plan.cc" + line="281">a shape plan.</doc> + <type name="shape_plan_t" c:type="hb_shape_plan_t*"/> + </parameter> + </parameters> + </function> + <function name="shape_plan_execute" + c:identifier="hb_shape_plan_execute" + version="0.9.7"> + <source-position filename="../src/hb-shape-plan.h" line="96"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="shape_plan" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape-plan.cc" + line="360">a shape plan.</doc> + <type name="shape_plan_t" c:type="hb_shape_plan_t*"/> + </parameter> + <parameter name="font" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape-plan.cc" + line="361">a font.</doc> + <type name="font_t" c:type="hb_font_t*"/> + </parameter> + <parameter name="buffer" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape-plan.cc" + line="362">a buffer.</doc> + <type name="buffer_t" c:type="hb_buffer_t*"/> + </parameter> + <parameter name="features" transfer-ownership="none"> + <array length="4" zero-terminated="0" c:type="const hb_feature_t*"> + <type name="feature_t" c:type="hb_feature_t"/> + </array> + </parameter> + <parameter name="num_features" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="shape_plan_get_empty" + c:identifier="hb_shape_plan_get_empty" + version="0.9.7"> + <source-position filename="../src/hb-shape-plan.h" line="75"/> + <return-value transfer-ownership="full"> + <type name="shape_plan_t" c:type="hb_shape_plan_t*"/> + </return-value> + </function> + <function name="shape_plan_get_shaper" + c:identifier="hb_shape_plan_get_shaper" + version="0.9.7"> + <source-position filename="../src/hb-shape-plan.h" line="103"/> + <return-value transfer-ownership="none"> + <type name="utf8" c:type="const char*"/> + </return-value> + <parameters> + <parameter name="shape_plan" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape-plan.cc" + line="343">a shape plan.</doc> + <type name="shape_plan_t" c:type="hb_shape_plan_t*"/> + </parameter> + </parameters> + </function> + <function name="shape_plan_get_user_data" + c:identifier="hb_shape_plan_get_user_data" + version="0.9.7" + introspectable="0"> + <source-position filename="../src/hb-shape-plan.h" line="91"/> + <return-value transfer-ownership="none" nullable="1"> + <type name="gpointer" c:type="void*"/> + </return-value> + <parameters> + <parameter name="shape_plan" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape-plan.cc" + line="325">a shape plan.</doc> + <type name="shape_plan_t" c:type="hb_shape_plan_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + </parameters> + </function> + <function name="shape_plan_reference" + c:identifier="hb_shape_plan_reference" + version="0.9.7" + introspectable="0"> + <source-position filename="../src/hb-shape-plan.h" line="78"/> + <return-value transfer-ownership="full"> + <type name="shape_plan_t" c:type="hb_shape_plan_t*"/> + </return-value> + <parameters> + <parameter name="shape_plan" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape-plan.cc" + line="265">a shape plan.</doc> + <type name="shape_plan_t" c:type="hb_shape_plan_t*"/> + </parameter> + </parameters> + </function> + <function name="shape_plan_set_user_data" + c:identifier="hb_shape_plan_set_user_data" + version="0.9.7" + introspectable="0"> + <source-position filename="../src/hb-shape-plan.h" line="84"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="shape_plan" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-shape-plan.cc" + line="301">a shape plan.</doc> + <type name="shape_plan_t" c:type="hb_shape_plan_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + <parameter name="data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + <parameter name="replace" transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </parameter> + </parameters> + </function> + <record name="shape_plan_t" + c:type="hb_shape_plan_t" + glib:type-name="hb_shape_plan_t" + glib:get-type="hb_gobject_shape_plan_get_type" + c:symbol-prefix="gobject_shape_plan"> + <source-position filename="../src/hb-shape-plan.h" line="39"/> + </record> + <function name="tag_from_string" + c:identifier="hb_tag_from_string" + version="0.9.2"> + <source-position filename="../src/hb-common.h" line="121"/> + <return-value transfer-ownership="none"> + <type name="tag_t" c:type="hb_tag_t"/> + </return-value> + <parameters> + <parameter name="str" transfer-ownership="none"> + <array length="1" zero-terminated="0" c:type="const char*"> + <type name="guint8"/> + </array> + </parameter> + <parameter name="len" transfer-ownership="none"> + <type name="gint" c:type="int"/> + </parameter> + </parameters> + </function> + <function name="tag_to_string" + c:identifier="hb_tag_to_string" + version="0.9.5"> + <source-position filename="../src/hb-common.h" line="125"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="tag" transfer-ownership="none"> + <type name="tag_t" c:type="hb_tag_t"/> + </parameter> + <parameter name="buf" + direction="out" + caller-allocates="1" + transfer-ownership="none"> + <array zero-terminated="0" c:type="char*" fixed-size="4"> + <type name="guint8"/> + </array> + </parameter> + </parameters> + </function> + <function name="unicode_combining_class" + c:identifier="hb_unicode_combining_class" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="360"/> + <return-value transfer-ownership="none"> + <type name="unicode_combining_class_t" + c:type="hb_unicode_combining_class_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <callback name="unicode_combining_class_func_t" + c:type="hb_unicode_combining_class_func_t"> + <source-position filename="../src/hb-unicode.h" line="230"/> + <return-value transfer-ownership="none"> + <type name="unicode_combining_class_t" + c:type="hb_unicode_combining_class_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="2"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <enumeration name="unicode_combining_class_t" + glib:type-name="hb_unicode_combining_class_t" + glib:get-type="hb_gobject_unicode_combining_class_get_type" + c:type="hb_unicode_combining_class_t"> + <member name="not_reordered" + value="0" + c:identifier="HB_UNICODE_COMBINING_CLASS_NOT_REORDERED" + glib:nick="not-reordered"> + </member> + <member name="overlay" + value="1" + c:identifier="HB_UNICODE_COMBINING_CLASS_OVERLAY" + glib:nick="overlay"> + </member> + <member name="nukta" + value="7" + c:identifier="HB_UNICODE_COMBINING_CLASS_NUKTA" + glib:nick="nukta"> + </member> + <member name="kana_voicing" + value="8" + c:identifier="HB_UNICODE_COMBINING_CLASS_KANA_VOICING" + glib:nick="kana-voicing"> + </member> + <member name="virama" + value="9" + c:identifier="HB_UNICODE_COMBINING_CLASS_VIRAMA" + glib:nick="virama"> + </member> + <member name="ccc10" + value="10" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC10" + glib:nick="ccc10"> + </member> + <member name="ccc11" + value="11" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC11" + glib:nick="ccc11"> + </member> + <member name="ccc12" + value="12" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC12" + glib:nick="ccc12"> + </member> + <member name="ccc13" + value="13" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC13" + glib:nick="ccc13"> + </member> + <member name="ccc14" + value="14" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC14" + glib:nick="ccc14"> + </member> + <member name="ccc15" + value="15" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC15" + glib:nick="ccc15"> + </member> + <member name="ccc16" + value="16" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC16" + glib:nick="ccc16"> + </member> + <member name="ccc17" + value="17" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC17" + glib:nick="ccc17"> + </member> + <member name="ccc18" + value="18" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC18" + glib:nick="ccc18"> + </member> + <member name="ccc19" + value="19" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC19" + glib:nick="ccc19"> + </member> + <member name="ccc20" + value="20" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC20" + glib:nick="ccc20"> + </member> + <member name="ccc21" + value="21" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC21" + glib:nick="ccc21"> + </member> + <member name="ccc22" + value="22" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC22" + glib:nick="ccc22"> + </member> + <member name="ccc23" + value="23" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC23" + glib:nick="ccc23"> + </member> + <member name="ccc24" + value="24" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC24" + glib:nick="ccc24"> + </member> + <member name="ccc25" + value="25" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC25" + glib:nick="ccc25"> + </member> + <member name="ccc26" + value="26" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC26" + glib:nick="ccc26"> + </member> + <member name="ccc27" + value="27" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC27" + glib:nick="ccc27"> + </member> + <member name="ccc28" + value="28" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC28" + glib:nick="ccc28"> + </member> + <member name="ccc29" + value="29" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC29" + glib:nick="ccc29"> + </member> + <member name="ccc30" + value="30" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC30" + glib:nick="ccc30"> + </member> + <member name="ccc31" + value="31" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC31" + glib:nick="ccc31"> + </member> + <member name="ccc32" + value="32" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC32" + glib:nick="ccc32"> + </member> + <member name="ccc33" + value="33" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC33" + glib:nick="ccc33"> + </member> + <member name="ccc34" + value="34" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC34" + glib:nick="ccc34"> + </member> + <member name="ccc35" + value="35" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC35" + glib:nick="ccc35"> + </member> + <member name="ccc36" + value="36" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC36" + glib:nick="ccc36"> + </member> + <member name="ccc84" + value="84" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC84" + glib:nick="ccc84"> + </member> + <member name="ccc91" + value="91" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC91" + glib:nick="ccc91"> + </member> + <member name="ccc103" + value="103" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC103" + glib:nick="ccc103"> + </member> + <member name="ccc107" + value="107" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC107" + glib:nick="ccc107"> + </member> + <member name="ccc118" + value="118" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC118" + glib:nick="ccc118"> + </member> + <member name="ccc122" + value="122" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC122" + glib:nick="ccc122"> + </member> + <member name="ccc129" + value="129" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC129" + glib:nick="ccc129"> + </member> + <member name="ccc130" + value="130" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC130" + glib:nick="ccc130"> + </member> + <member name="ccc133" + value="132" + c:identifier="HB_UNICODE_COMBINING_CLASS_CCC133" + glib:nick="ccc133"> + </member> + <member name="attached_below_left" + value="200" + c:identifier="HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW_LEFT" + glib:nick="attached-below-left"> + </member> + <member name="attached_below" + value="202" + c:identifier="HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW" + glib:nick="attached-below"> + </member> + <member name="attached_above" + value="214" + c:identifier="HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE" + glib:nick="attached-above"> + </member> + <member name="attached_above_right" + value="216" + c:identifier="HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE_RIGHT" + glib:nick="attached-above-right"> + </member> + <member name="below_left" + value="218" + c:identifier="HB_UNICODE_COMBINING_CLASS_BELOW_LEFT" + glib:nick="below-left"> + </member> + <member name="below" + value="220" + c:identifier="HB_UNICODE_COMBINING_CLASS_BELOW" + glib:nick="below"> + </member> + <member name="below_right" + value="222" + c:identifier="HB_UNICODE_COMBINING_CLASS_BELOW_RIGHT" + glib:nick="below-right"> + </member> + <member name="left" + value="224" + c:identifier="HB_UNICODE_COMBINING_CLASS_LEFT" + glib:nick="left"> + </member> + <member name="right" + value="226" + c:identifier="HB_UNICODE_COMBINING_CLASS_RIGHT" + glib:nick="right"> + </member> + <member name="above_left" + value="228" + c:identifier="HB_UNICODE_COMBINING_CLASS_ABOVE_LEFT" + glib:nick="above-left"> + </member> + <member name="above" + value="230" + c:identifier="HB_UNICODE_COMBINING_CLASS_ABOVE" + glib:nick="above"> + </member> + <member name="above_right" + value="232" + c:identifier="HB_UNICODE_COMBINING_CLASS_ABOVE_RIGHT" + glib:nick="above-right"> + </member> + <member name="double_below" + value="233" + c:identifier="HB_UNICODE_COMBINING_CLASS_DOUBLE_BELOW" + glib:nick="double-below"> + </member> + <member name="double_above" + value="234" + c:identifier="HB_UNICODE_COMBINING_CLASS_DOUBLE_ABOVE" + glib:nick="double-above"> + </member> + <member name="iota_subscript" + value="240" + c:identifier="HB_UNICODE_COMBINING_CLASS_IOTA_SUBSCRIPT" + glib:nick="iota-subscript"> + </member> + <member name="invalid" + value="255" + c:identifier="HB_UNICODE_COMBINING_CLASS_INVALID" + glib:nick="invalid"> + </member> + </enumeration> + <function name="unicode_compose" + c:identifier="hb_unicode_compose" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="391"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.cc" + line="392">Unicode functions.</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="a" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="b" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="ab" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + </parameters> + </function> + <callback name="unicode_compose_func_t" c:type="hb_unicode_compose_func_t"> + <source-position filename="../src/hb-unicode.h" line="243"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="a" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="b" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="ab" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="4"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="unicode_decompose" + c:identifier="hb_unicode_decompose" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="397"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.cc" + line="414">Unicode functions.</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="ab" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="a" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="b" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + </parameters> + </function> + <function name="unicode_decompose_compatibility" + c:identifier="hb_unicode_decompose_compatibility" + version="0.9.2" + deprecated="1" + deprecated-version="2.0.0"> + <source-position filename="../src/hb-deprecated.h" line="163"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.cc" + line="437">Unicode functions.</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="u" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="decomposed" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + </parameters> + </function> + <callback name="unicode_decompose_compatibility_func_t" + c:type="hb_unicode_decompose_compatibility_func_t" + deprecated="1" + deprecated-version="2.0.0"> + <doc xml:space="preserve" + filename="../src/hb-deprecated.h" + line="111">Fully decompose @u to its Unicode compatibility decomposition. The codepoints of the decomposition will be written to @decomposed. +The complete length of the decomposition will be returned. + +If @u has no compatibility decomposition, zero should be returned. + +The Unicode standard guarantees that a buffer of length %HB_UNICODE_MAX_DECOMPOSITION_LEN codepoints will always be sufficient for any +compatibility decomposition plus an terminating value of 0. Consequently, @decompose must be allocated by the caller to be at least this length. Implementations +of this function type must ensure that they do not write past the provided array.</doc> + <source-position filename="../src/hb-deprecated.h" line="131"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-deprecated.h" + line="127">number of codepoints in the full compatibility decomposition of @u, or 0 if no decomposition available.</doc> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-deprecated.h" + line="113">a Unicode function structure</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="u" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-deprecated.h" + line="114">codepoint to decompose</doc> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="decomposed" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-deprecated.h" + line="115">address of codepoint array (of length %HB_UNICODE_MAX_DECOMPOSITION_LEN) to write decomposition into</doc> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="3"> + <doc xml:space="preserve" + filename="../src/hb-deprecated.h" + line="116">user data pointer as passed to hb_unicode_funcs_set_decompose_compatibility_func()</doc> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <callback name="unicode_decompose_func_t" + c:type="hb_unicode_decompose_func_t"> + <source-position filename="../src/hb-unicode.h" line="248"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="ab" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="a" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="b" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t*"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="4"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="unicode_eastasian_width" + c:identifier="hb_unicode_eastasian_width" + version="0.9.2" + deprecated="1" + deprecated-version="2.0.0"> + <source-position filename="../src/hb-deprecated.h" line="107"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <callback name="unicode_eastasian_width_func_t" + c:type="hb_unicode_eastasian_width_func_t" + deprecated="1" + deprecated-version="2.0.0"> + <source-position filename="../src/hb-deprecated.h" line="79"/> + <return-value transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="2"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="unicode_funcs_create" + c:identifier="hb_unicode_funcs_create" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="190"/> + <return-value transfer-ownership="full"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </return-value> + <parameters> + <parameter name="parent" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_destroy" + c:identifier="hb_unicode_funcs_destroy" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-unicode.h" line="199"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.cc" + line="236">Unicode functions.</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_get_default" + c:identifier="hb_unicode_funcs_get_default"> + <source-position filename="../src/hb-unicode.h" line="186"/> + <return-value transfer-ownership="full"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </return-value> + </function> + <function name="unicode_funcs_get_empty" + c:identifier="hb_unicode_funcs_get_empty" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="193"/> + <return-value transfer-ownership="full"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </return-value> + </function> + <function name="unicode_funcs_get_parent" + c:identifier="hb_unicode_funcs_get_parent" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="221"/> + <return-value transfer-ownership="full"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.cc" + line="335">Unicode functions.</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_get_user_data" + c:identifier="hb_unicode_funcs_get_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-unicode.h" line="210"/> + <return-value transfer-ownership="none" nullable="1"> + <type name="gpointer" c:type="void*"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.cc" + line="283">Unicode functions.</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_is_immutable" + c:identifier="hb_unicode_funcs_is_immutable" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="218"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.cc" + line="319">Unicode functions.</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_make_immutable" + c:identifier="hb_unicode_funcs_make_immutable" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="215"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.cc" + line="302">Unicode functions.</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_reference" + c:identifier="hb_unicode_funcs_reference" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-unicode.h" line="196"/> + <return-value transfer-ownership="full"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.cc" + line="220">Unicode functions.</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_set_combining_class_func" + c:identifier="hb_unicode_funcs_set_combining_class_func" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="268"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.h" + line="258">a Unicode function structure</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="unicode_combining_class_func_t" + c:type="hb_unicode_combining_class_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_set_compose_func" + c:identifier="hb_unicode_funcs_set_compose_func" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="332"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.h" + line="322">a Unicode function structure</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="unicode_compose_func_t" + c:type="hb_unicode_compose_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_set_decompose_compatibility_func" + c:identifier="hb_unicode_funcs_set_decompose_compatibility_func" + version="0.9.2" + deprecated="1" + deprecated-version="2.0.0"> + <source-position filename="../src/hb-deprecated.h" line="158"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-deprecated.h" + line="147">a Unicode function structure</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="unicode_decompose_compatibility_func_t" + c:type="hb_unicode_decompose_compatibility_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_set_decompose_func" + c:identifier="hb_unicode_funcs_set_decompose_func" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="348"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.h" + line="338">a Unicode function structure</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="unicode_decompose_func_t" + c:type="hb_unicode_decompose_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_set_eastasian_width_func" + c:identifier="hb_unicode_funcs_set_eastasian_width_func" + version="0.9.2" + deprecated="1" + deprecated-version="2.0.0"> + <source-position filename="../src/hb-deprecated.h" line="96"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-deprecated.h" + line="85">a Unicode function structure</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="unicode_eastasian_width_func_t" + c:type="hb_unicode_eastasian_width_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_set_general_category_func" + c:identifier="hb_unicode_funcs_set_general_category_func" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="284"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.h" + line="274">a Unicode function structure</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="unicode_general_category_func_t" + c:type="hb_unicode_general_category_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_set_mirroring_func" + c:identifier="hb_unicode_funcs_set_mirroring_func" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="300"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.h" + line="290">a Unicode function structure</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="unicode_mirroring_func_t" + c:type="hb_unicode_mirroring_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_set_script_func" + c:identifier="hb_unicode_funcs_set_script_func" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="316"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.h" + line="306">a Unicode function structure</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="func" + transfer-ownership="none" + scope="notified" + closure="2" + destroy="3"> + <type name="unicode_script_func_t" + c:type="hb_unicode_script_func_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none" scope="notified"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + </parameters> + </function> + <function name="unicode_funcs_set_user_data" + c:identifier="hb_unicode_funcs_set_user_data" + version="0.9.2" + introspectable="0"> + <source-position filename="../src/hb-unicode.h" line="202"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-unicode.cc" + line="259">Unicode functions.</doc> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="key" transfer-ownership="none"> + <type name="user_data_key_t" c:type="hb_user_data_key_t*"/> + </parameter> + <parameter name="data" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <type name="gpointer" c:type="void*"/> + </parameter> + <parameter name="destroy" transfer-ownership="none"> + <type name="destroy_func_t" c:type="hb_destroy_func_t"/> + </parameter> + <parameter name="replace" transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </parameter> + </parameters> + </function> + <record name="unicode_funcs_t" + c:type="hb_unicode_funcs_t" + glib:type-name="hb_unicode_funcs_t" + glib:get-type="hb_gobject_unicode_funcs_get_type" + c:symbol-prefix="gobject_unicode_funcs"> + <source-position filename="../src/hb-unicode.h" line="179"/> + </record> + <function name="unicode_general_category" + c:identifier="hb_unicode_general_category" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="369"/> + <return-value transfer-ownership="none"> + <type name="unicode_general_category_t" + c:type="hb_unicode_general_category_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <callback name="unicode_general_category_func_t" + c:type="hb_unicode_general_category_func_t"> + <source-position filename="../src/hb-unicode.h" line="233"/> + <return-value transfer-ownership="none"> + <type name="unicode_general_category_t" + c:type="hb_unicode_general_category_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="2"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <enumeration name="unicode_general_category_t" + glib:type-name="hb_unicode_general_category_t" + glib:get-type="hb_gobject_unicode_general_category_get_type" + c:type="hb_unicode_general_category_t"> + <member name="control" + value="0" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_CONTROL" + glib:nick="control"> + </member> + <member name="format" + value="1" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_FORMAT" + glib:nick="format"> + </member> + <member name="unassigned" + value="2" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_UNASSIGNED" + glib:nick="unassigned"> + </member> + <member name="private_use" + value="3" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_PRIVATE_USE" + glib:nick="private-use"> + </member> + <member name="surrogate" + value="4" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_SURROGATE" + glib:nick="surrogate"> + </member> + <member name="lowercase_letter" + value="5" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_LOWERCASE_LETTER" + glib:nick="lowercase-letter"> + </member> + <member name="modifier_letter" + value="6" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_MODIFIER_LETTER" + glib:nick="modifier-letter"> + </member> + <member name="other_letter" + value="7" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_OTHER_LETTER" + glib:nick="other-letter"> + </member> + <member name="titlecase_letter" + value="8" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_TITLECASE_LETTER" + glib:nick="titlecase-letter"> + </member> + <member name="uppercase_letter" + value="9" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_UPPERCASE_LETTER" + glib:nick="uppercase-letter"> + </member> + <member name="spacing_mark" + value="10" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_SPACING_MARK" + glib:nick="spacing-mark"> + </member> + <member name="enclosing_mark" + value="11" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_ENCLOSING_MARK" + glib:nick="enclosing-mark"> + </member> + <member name="non_spacing_mark" + value="12" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_NON_SPACING_MARK" + glib:nick="non-spacing-mark"> + </member> + <member name="decimal_number" + value="13" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_DECIMAL_NUMBER" + glib:nick="decimal-number"> + </member> + <member name="letter_number" + value="14" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_LETTER_NUMBER" + glib:nick="letter-number"> + </member> + <member name="other_number" + value="15" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_OTHER_NUMBER" + glib:nick="other-number"> + </member> + <member name="connect_punctuation" + value="16" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_CONNECT_PUNCTUATION" + glib:nick="connect-punctuation"> + </member> + <member name="dash_punctuation" + value="17" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_DASH_PUNCTUATION" + glib:nick="dash-punctuation"> + </member> + <member name="close_punctuation" + value="18" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_CLOSE_PUNCTUATION" + glib:nick="close-punctuation"> + </member> + <member name="final_punctuation" + value="19" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_FINAL_PUNCTUATION" + glib:nick="final-punctuation"> + </member> + <member name="initial_punctuation" + value="20" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_INITIAL_PUNCTUATION" + glib:nick="initial-punctuation"> + </member> + <member name="other_punctuation" + value="21" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_OTHER_PUNCTUATION" + glib:nick="other-punctuation"> + </member> + <member name="open_punctuation" + value="22" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_OPEN_PUNCTUATION" + glib:nick="open-punctuation"> + </member> + <member name="currency_symbol" + value="23" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_CURRENCY_SYMBOL" + glib:nick="currency-symbol"> + </member> + <member name="modifier_symbol" + value="24" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_MODIFIER_SYMBOL" + glib:nick="modifier-symbol"> + </member> + <member name="math_symbol" + value="25" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_MATH_SYMBOL" + glib:nick="math-symbol"> + </member> + <member name="other_symbol" + value="26" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_OTHER_SYMBOL" + glib:nick="other-symbol"> + </member> + <member name="line_separator" + value="27" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_LINE_SEPARATOR" + glib:nick="line-separator"> + </member> + <member name="paragraph_separator" + value="28" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_PARAGRAPH_SEPARATOR" + glib:nick="paragraph-separator"> + </member> + <member name="space_separator" + value="29" + c:identifier="HB_UNICODE_GENERAL_CATEGORY_SPACE_SEPARATOR" + glib:nick="space-separator"> + </member> + </enumeration> + <function name="unicode_mirroring" + c:identifier="hb_unicode_mirroring" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="378"/> + <return-value transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <callback name="unicode_mirroring_func_t" + c:type="hb_unicode_mirroring_func_t"> + <source-position filename="../src/hb-unicode.h" line="236"/> + <return-value transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="2"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <function name="unicode_script" + c:identifier="hb_unicode_script" + version="0.9.2"> + <source-position filename="../src/hb-unicode.h" line="387"/> + <return-value transfer-ownership="none"> + <type name="script_t" c:type="hb_script_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + </parameters> + </function> + <callback name="unicode_script_func_t" c:type="hb_unicode_script_func_t"> + <source-position filename="../src/hb-unicode.h" line="239"/> + <return-value transfer-ownership="none"> + <type name="script_t" c:type="hb_script_t"/> + </return-value> + <parameters> + <parameter name="ufuncs" transfer-ownership="none"> + <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/> + </parameter> + <parameter name="unicode" transfer-ownership="none"> + <type name="codepoint_t" c:type="hb_codepoint_t"/> + </parameter> + <parameter name="user_data" + transfer-ownership="none" + nullable="1" + allow-none="1" + closure="2"> + <type name="gpointer" c:type="void*"/> + </parameter> + </parameters> + </callback> + <record name="user_data_key_t" + c:type="hb_user_data_key_t" + glib:type-name="hb_user_data_key_t" + glib:get-type="hb_gobject_user_data_key_get_type" + c:symbol-prefix="gobject_user_data_key"> + <source-position filename="../src/hb-common.h" line="416"/> + <field name="unused" readable="0" private="1"> + <type name="gchar" c:type="char"/> + </field> + </record> + <union name="var_int_t" c:type="hb_var_int_t"> + <source-position filename="../src/hb-common.h" line="105"/> + <field name="u32" writable="1"> + <type name="guint32" c:type="uint32_t"/> + </field> + <field name="i32" writable="1"> + <type name="gint32" c:type="int32_t"/> + </field> + <field name="u16" writable="1"> + <array zero-terminated="0" fixed-size="2"> + <type name="guint16" c:type="uint16_t"/> + </array> + </field> + <field name="i16" writable="1"> + <array zero-terminated="0" fixed-size="2"> + <type name="gint16" c:type="int16_t"/> + </array> + </field> + <field name="u8" writable="1"> + <array zero-terminated="0" fixed-size="4"> + <type name="guint8" c:type="uint8_t"/> + </array> + </field> + <field name="i8" writable="1"> + <array zero-terminated="0" fixed-size="4"> + <type name="gint8" c:type="int8_t"/> + </array> + </field> + </union> + <function name="variation_from_string" + c:identifier="hb_variation_from_string" + version="1.4.2"> + <source-position filename="../src/hb-common.h" line="477"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="str" transfer-ownership="none"> + <type name="utf8" c:type="const char*"/> + </parameter> + <parameter name="len" transfer-ownership="none"> + <type name="gint" c:type="int"/> + </parameter> + <parameter name="variation" transfer-ownership="none"> + <type name="variation_t" c:type="hb_variation_t*"/> + </parameter> + </parameters> + </function> + <record name="variation_t" c:type="hb_variation_t" version="1.4.2"> + <source-position filename="../src/hb-common.h" line="474"/> + <field name="tag" writable="1"> + <type name="tag_t" c:type="hb_tag_t"/> + </field> + <field name="value" writable="1"> + <type name="gfloat" c:type="float"/> + </field> + <method name="_string" + c:identifier="hb_variation_to_string" + moved-to="variation_to_string" + version="1.4.2"> + <source-position filename="../src/hb-common.h" line="481"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <instance-parameter name="variation" transfer-ownership="none"> + <type name="variation_t" c:type="hb_variation_t*"/> + </instance-parameter> + <parameter name="buf" transfer-ownership="none"> + <type name="utf8" c:type="char*"/> + </parameter> + <parameter name="size" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </method> + </record> + <function name="variation_to_string" + c:identifier="hb_variation_to_string" + version="1.4.2"> + <source-position filename="../src/hb-common.h" line="481"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="variation" transfer-ownership="none"> + <type name="variation_t" c:type="hb_variation_t*"/> + </parameter> + <parameter name="buf" transfer-ownership="none"> + <type name="utf8" c:type="char*"/> + </parameter> + <parameter name="size" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="version" c:identifier="hb_version" version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="614">Returns library version as three integer components.</doc> + <source-position filename="../src/hb-version.h" line="51"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="major" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="616">Library major version component.</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="minor" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="617">Library minor version component.</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + <parameter name="micro" + direction="out" + caller-allocates="0" + transfer-ownership="full"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="618">Library micro version component.</doc> + <type name="guint" c:type="unsigned int*"/> + </parameter> + </parameters> + </function> + <function name="version_atleast" + c:identifier="hb_version_atleast" + version="0.9.30"> + <source-position filename="../src/hb-version.h" line="59"/> + <return-value transfer-ownership="none"> + <type name="bool_t" c:type="hb_bool_t"/> + </return-value> + <parameters> + <parameter name="major" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="minor" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + <parameter name="micro" transfer-ownership="none"> + <type name="guint" c:type="unsigned int"/> + </parameter> + </parameters> + </function> + <function name="version_string" + c:identifier="hb_version_string" + version="0.9.2"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="634">Returns library version as a string with three components.</doc> + <source-position filename="../src/hb-version.h" line="56"/> + <return-value transfer-ownership="none"> + <doc xml:space="preserve" + filename="../src/hb-common.cc" + line="639">library version string.</doc> + <type name="utf8" c:type="const char*"/> + </return-value> + </function> + </namespace> +</repository>