summaryrefslogtreecommitdiff
path: root/bindings/lazharfbuzz0.pas
diff options
context:
space:
mode:
Diffstat (limited to 'bindings/lazharfbuzz0.pas')
-rw-r--r--bindings/lazharfbuzz0.pas1969
1 files changed, 1969 insertions, 0 deletions
diff --git a/bindings/lazharfbuzz0.pas b/bindings/lazharfbuzz0.pas
new file mode 100644
index 0000000..b02c4d8
--- /dev/null
+++ b/bindings/lazharfbuzz0.pas
@@ -0,0 +1,1969 @@
+{ This is an autogenerated unit using gobject introspection (gir2pascal). Do not Edit. }
+unit LazHarfBuzz0;
+
+{$MODE OBJFPC}{$H+}
+
+{$PACKRECORDS C}
+{$MODESWITCH DUPLICATELOCALS+}
+
+{$ifdef Unix}
+{$LINKLIB libharfbuzz.so.0}
+{$LINKLIB libharfbuzz-gobject.so.0}
+{$endif}
+{$WARN 3031 off : Values in enumeration types have to be ascending}
+interface
+uses
+ CTypes, LazGObject2, Lazfreetype2_2, LazGLib2;
+
+const
+ {$ifdef MsWindows}
+ LazHarfBuzz0_library = 'libharfbuzz-gobject.so.dll';
+ {$else}
+ LazHarfBuzz0_library = 'libharfbuzz-gobject.so.0';
+ {$endif}
+
+ HB_AAT_LAYOUT_NO_SELECTOR_INDEX = 65535;
+ HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT = 65533;
+ HB_FEATURE_GLOBAL_START = 0;
+ HB_LANGUAGE_INVALID = 0;
+ HB_MAP_VALUE_INVALID = 4294967295;
+ HB_OT_LAYOUT_DEFAULT_LANGUAGE_INDEX = 65535;
+ HB_OT_LAYOUT_NO_FEATURE_INDEX = 65535;
+ HB_OT_LAYOUT_NO_SCRIPT_INDEX = 65535;
+ HB_OT_LAYOUT_NO_VARIATIONS_INDEX = 4294967295;
+ HB_OT_MAX_TAGS_PER_LANGUAGE = 3;
+ HB_OT_MAX_TAGS_PER_SCRIPT = 3;
+ HB_OT_VAR_NO_AXIS_INDEX = 4294967295;
+ HB_SET_VALUE_INVALID = 4294967295;
+ HB_UNICODE_MAX = 1114111;
+ HB_UNICODE_MAX_DECOMPOSITION_LEN = 19;
+ HB_VERSION_MAJOR = 6;
+ HB_VERSION_MICRO = 0;
+ HB_VERSION_MINOR = 0;
+ HB_VERSION_STRING = '6.0.0';
+type
+ Thb_aat_layout_feature_selector_t = (
+ Thb_aat_layout_feature_selector_tMinValue = -$7FFFFFFF,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_ALTERNATES = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL1 = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_MINUS_ON = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_ORNAMENTS = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_LOWER_CASE_NUMBERS = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_TEXT = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_STYLE_OPTIONS = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_CHARACTERS = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHENS_TO_EM_DASH_ON = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_MONOSPACED_NUMBERS = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_INITIAL_SWASHES_ON = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SUBSTITUTE_VERTICAL_FORMS_ON = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_LINGUISTIC_REARRANGEMENT_ON = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_FRACTIONS = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PREVENT_OVERLAP_ON = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SHOW_DIACRITICS = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NORMAL_POSITION = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_HORIZ_KANA_ON = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_STYLISTIC_ALTERNATES = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_CJK_ITALIC_ROMAN = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_LAYOUT_ON = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DEFAULT_UPPER_CASE = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HALF_WIDTH_CJK_ROMAN = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_ALTERNATES_ON = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DEFAULT_LOWER_CASE = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_VERTICAL_ROMAN_CENTERED = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_FULL_WIDTH_KANA = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_FULL_WIDTH_IDEOGRAPHS = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_TRANSLITERATION = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_ANNOTATION = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_CJK_SYMBOL_ALTERNATIVES = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_IDEOGRAPHIC_ALTERNATIVES = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CANONICAL_COMPOSITION_ON = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_RUBY_KANA = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_AND_LOWER_CASE = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_TYPE_FEATURES_ON = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_UNCONNECTED = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_REQUIRED_LIGATURES_ON = 0,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHENS_TO_EM_DASH_OFF = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_IDEOGRAPHS = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_BOX_ANNOTATION = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_KANA = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_VERTICAL_FRACTIONS = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CANONICAL_COMPOSITION_OFF = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PARTIALLY_CONNECTED = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PREVENT_OVERLAP_OFF = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_CASE_SMALL_CAPS = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DISPLAY_TEXT = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL2 = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_CJK_ROMAN = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DINGBATS = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SIMPLIFIED_CHARACTERS = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_CASE_NUMBERS = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_MONOSPACED_TEXT = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_MINUS_OFF = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_LOWER_CASE_SMALL_CAPS = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_TYPE_FEATURES_OFF = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_NUMBERS = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_LINGUISTIC_REARRANGEMENT_OFF = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_VERTICAL_ROMAN_HBASELINE = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_INITIAL_SWASHES_OFF = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_HORIZ_KANA_OFF = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_REQUIRED_LIGATURES_OFF = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_LAYOUT_OFF = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_ALTERNATES_OFF = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HIDE_DIACRITICS = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_ONE = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SUPERIORS = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SUBSTITUTE_VERTICAL_FORMS_OFF = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_CAPS = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_ONE = 1,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS1978_CHARACTERS = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_CASE_PETITE_CAPS = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_LOWER_CASE_PETITE_CAPS = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ONE_ON = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL3 = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_VERT_KANA_ON = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ENGRAVED_TEXT = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HALF_WIDTH_IDEOGRAPHS = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_TWO = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ROUNDED_BOX_ANNOTATION = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA_ON = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_COMPATIBILITY_COMPOSITION_ON = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_TWO = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HALF_WIDTH_TEXT = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_SPACING_ON = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_COMMON_LIGATURES_ON = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SWASH_ALTERNATES_ON = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HIRAGANA_TO_KATAKANA = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN_ON = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_LOWER_CASE = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_FINAL_SWASHES_ON = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_THIRD_WIDTH_NUMBERS = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ASTERISK_TO_MULTIPLY_ON = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_EN_DASH_ON = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_INFERIORS = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DECOMPOSE_DIACRITICS = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DIAGONAL_FRACTIONS = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CURSIVE = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PI_CHARACTERS = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DEFAULT_CJK_ROMAN = 2,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_THIRD_WIDTH_TEXT = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_COMPATIBILITY_COMPOSITION_OFF = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SWASH_ALTERNATES_OFF = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_QUARTER_WIDTH_NUMBERS = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL4 = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ASTERISK_TO_MULTIPLY_OFF = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_FULL_WIDTH_CJK_ROMAN = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_THREE = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN_OFF = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_COMMON_LIGATURES_OFF = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CIRCLE_ANNOTATION = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_EN_DASH_OFF = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_KATAKANA_TO_HIRAGANA = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_SPACING_OFF = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_FINAL_SWASHES_OFF = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_FLEURONS = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS1983_CHARACTERS = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ORDINALS = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA_OFF = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ILLUMINATED_CAPS = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_THREE = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_VERT_KANA_OFF = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ONE_OFF = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SMALL_CAPS = 3,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DECORATIVE_BORDERS = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_FOUR = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_INITIAL_SWASHES_ON = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SLASHED_ZERO_ON = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_INITIAL_CAPS = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_FOUR = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_TITLING_CAPS = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SLASH_TO_DIVIDE_ON = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_KANA_TO_ROMANIZATION = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_RARE_LIGATURES_ON = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SCIENTIFIC_INFERIORS = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_SWASH_ALTERNATES_ON = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWO_ON = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_QUARTER_WIDTH_TEXT = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL5 = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_INVERTED_CIRCLE_ANNOTATION = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_TRANSCODING_COMPOSITION_ON = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS1990_CHARACTERS = 4,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_RARE_LIGATURES_OFF = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_FIVE = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_TRANSCODING_COMPOSITION_OFF = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_INTERNATIONAL_SYMBOLS = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_FIVE = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_INITIAL_CAPS_AND_SMALL_CAPS = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_SWASH_ALTERNATES_OFF = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ROMANIZATION_TO_HIRAGANA = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ALT_PROPORTIONAL_TEXT = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWO_OFF = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_TALL_CAPS = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_ONE = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SLASH_TO_DIVIDE_OFF = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SLASHED_ZERO_OFF = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PARENTHESIS_ANNOTATION = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_INITIAL_SWASHES_OFF = 5,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_LOGOS_ON = 6,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_THREE_ON = 6,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_FINAL_SWASHES_ON = 6,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_INEQUALITY_LIGATURES_ON = 6,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PERIOD_ANNOTATION = 6,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_MATH_SYMBOLS = 6,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ROMANIZATION_TO_KATAKANA = 6,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ALT_HALF_WIDTH_TEXT = 6,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_TWO = 6,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_FORM_INTERROBANG_ON = 6,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_THREE_OFF = 7,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_FINAL_SWASHES_OFF = 7,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_THREE = 7,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_INEQUALITY_LIGATURES_OFF = 7,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ROMAN_NUMERAL_ANNOTATION = 7,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL_ALT_ONE = 7,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_FORM_INTERROBANG_OFF = 7,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_LOGOS_OFF = 7,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_FOUR = 8,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NON_FINAL_SWASHES_ON = 8,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SMART_QUOTES_ON = 8,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL_ALT_TWO = 8,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FOUR_ON = 8,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_EXPONENTS_ON = 8,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_REBUS_PICTURES_ON = 8,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DIAMOND_ANNOTATION = 8,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_FIVE = 9,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_EXPONENTS_OFF = 9,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FOUR_OFF = 9,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SMART_QUOTES_OFF = 9,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL_ALT_THREE = 9,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_INVERTED_BOX_ANNOTATION = 9,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_REBUS_PICTURES_OFF = 9,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NON_FINAL_SWASHES_OFF = 9,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DIPHTHONG_LIGATURES_ON = 10,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_MATHEMATICAL_GREEK_ON = 10,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FIVE_ON = 10,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_EXPERT_CHARACTERS = 10,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PERIODS_TO_ELLIPSIS_ON = 10,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_INVERTED_ROUNDED_BOX_ANNOTATION = 10,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FIVE_OFF = 11,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_MATHEMATICAL_GREEK_OFF = 11,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_DIPHTHONG_LIGATURES_OFF = 11,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS2004_CHARACTERS = 11,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_PERIODS_TO_ELLIPSIS_OFF = 11,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SIX_ON = 12,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SQUARED_LIGATURES_ON = 12,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HOJO_CHARACTERS = 12,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SQUARED_LIGATURES_OFF = 13,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_NLCCHARACTERS = 13,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SIX_OFF = 13,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ABBREV_SQUARED_LIGATURES_ON = 14,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_NAMES_CHARACTERS = 14,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SEVEN_ON = 14,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_ABBREV_SQUARED_LIGATURES_OFF = 15,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SEVEN_OFF = 15,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_EIGHT_ON = 16,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SYMBOL_LIGATURES_ON = 16,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_EIGHT_OFF = 17,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_SYMBOL_LIGATURES_OFF = 17,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_LIGATURES_ON = 18,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_NINE_ON = 18,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_LIGATURES_OFF = 19,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_NINE_OFF = 19,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HISTORICAL_LIGATURES_ON = 20,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TEN_ON = 20,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TEN_OFF = 21,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_HISTORICAL_LIGATURES_OFF = 21,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ELEVEN_ON = 22,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ELEVEN_OFF = 23,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWELVE_ON = 24,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWELVE_OFF = 25,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_THIRTEEN_ON = 26,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_THIRTEEN_OFF = 27,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FOURTEEN_ON = 28,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FOURTEEN_OFF = 29,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FIFTEEN_ON = 30,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FIFTEEN_OFF = 31,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SIXTEEN_ON = 32,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SIXTEEN_OFF = 33,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SEVENTEEN_ON = 34,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SEVENTEEN_OFF = 35,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_EIGHTEEN_ON = 36,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_EIGHTEEN_OFF = 37,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_NINETEEN_ON = 38,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_NINETEEN_OFF = 39,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWENTY_ON = 40,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWENTY_OFF = 41,
+ HB_AAT_LAYOUT_FEATURE_SELECTOR_INVALID = 65535,
+ Thb_aat_layout_feature_selector_tMaxValue = $7FFFFFFF
+ );
+ Thb_aat_layout_feature_type_t = (
+ Thb_aat_layout_feature_type_tMinValue = -$7FFFFFFF,
+ HB_AAT_LAYOUT_FEATURE_TYPE_ALL_TYPOGRAPHIC = 0,
+ HB_AAT_LAYOUT_FEATURE_TYPE_LIGATURES = 1,
+ HB_AAT_LAYOUT_FEATURE_TYPE_CURISVE_CONNECTION = 2,
+ HB_AAT_LAYOUT_FEATURE_TYPE_LETTER_CASE = 3,
+ HB_AAT_LAYOUT_FEATURE_TYPE_VERTICAL_SUBSTITUTION = 4,
+ HB_AAT_LAYOUT_FEATURE_TYPE_LINGUISTIC_REARRANGEMENT = 5,
+ HB_AAT_LAYOUT_FEATURE_TYPE_NUMBER_SPACING = 6,
+ HB_AAT_LAYOUT_FEATURE_TYPE_SMART_SWASH_TYPE = 8,
+ HB_AAT_LAYOUT_FEATURE_TYPE_DIACRITICS_TYPE = 9,
+ HB_AAT_LAYOUT_FEATURE_TYPE_VERTICAL_POSITION = 10,
+ HB_AAT_LAYOUT_FEATURE_TYPE_FRACTIONS = 11,
+ HB_AAT_LAYOUT_FEATURE_TYPE_OVERLAPPING_CHARACTERS_TYPE = 13,
+ HB_AAT_LAYOUT_FEATURE_TYPE_TYPOGRAPHIC_EXTRAS = 14,
+ HB_AAT_LAYOUT_FEATURE_TYPE_MATHEMATICAL_EXTRAS = 15,
+ HB_AAT_LAYOUT_FEATURE_TYPE_ORNAMENT_SETS_TYPE = 16,
+ HB_AAT_LAYOUT_FEATURE_TYPE_CHARACTER_ALTERNATIVES = 17,
+ HB_AAT_LAYOUT_FEATURE_TYPE_DESIGN_COMPLEXITY_TYPE = 18,
+ HB_AAT_LAYOUT_FEATURE_TYPE_STYLE_OPTIONS = 19,
+ HB_AAT_LAYOUT_FEATURE_TYPE_CHARACTER_SHAPE = 20,
+ HB_AAT_LAYOUT_FEATURE_TYPE_NUMBER_CASE = 21,
+ HB_AAT_LAYOUT_FEATURE_TYPE_TEXT_SPACING = 22,
+ HB_AAT_LAYOUT_FEATURE_TYPE_TRANSLITERATION = 23,
+ HB_AAT_LAYOUT_FEATURE_TYPE_ANNOTATION_TYPE = 24,
+ HB_AAT_LAYOUT_FEATURE_TYPE_KANA_SPACING_TYPE = 25,
+ HB_AAT_LAYOUT_FEATURE_TYPE_IDEOGRAPHIC_SPACING_TYPE = 26,
+ HB_AAT_LAYOUT_FEATURE_TYPE_UNICODE_DECOMPOSITION_TYPE = 27,
+ HB_AAT_LAYOUT_FEATURE_TYPE_RUBY_KANA = 28,
+ HB_AAT_LAYOUT_FEATURE_TYPE_CJK_SYMBOL_ALTERNATIVES_TYPE = 29,
+ HB_AAT_LAYOUT_FEATURE_TYPE_IDEOGRAPHIC_ALTERNATIVES_TYPE = 30,
+ HB_AAT_LAYOUT_FEATURE_TYPE_CJK_VERTICAL_ROMAN_PLACEMENT_TYPE = 31,
+ HB_AAT_LAYOUT_FEATURE_TYPE_ITALIC_CJK_ROMAN = 32,
+ HB_AAT_LAYOUT_FEATURE_TYPE_CASE_SENSITIVE_LAYOUT = 33,
+ HB_AAT_LAYOUT_FEATURE_TYPE_ALTERNATE_KANA = 34,
+ HB_AAT_LAYOUT_FEATURE_TYPE_STYLISTIC_ALTERNATIVES = 35,
+ HB_AAT_LAYOUT_FEATURE_TYPE_CONTEXTUAL_ALTERNATIVES = 36,
+ HB_AAT_LAYOUT_FEATURE_TYPE_LOWER_CASE = 37,
+ HB_AAT_LAYOUT_FEATURE_TYPE_UPPER_CASE = 38,
+ HB_AAT_LAYOUT_FEATURE_TYPE_LANGUAGE_TAG_TYPE = 39,
+ HB_AAT_LAYOUT_FEATURE_TYPE_CJK_ROMAN_SPACING_TYPE = 103,
+ HB_AAT_LAYOUT_FEATURE_TYPE_INVALID = 65535,
+ Thb_aat_layout_feature_type_tMaxValue = $7FFFFFFF
+ );
+ Thb_memory_mode_t = (
+ Thb_memory_mode_tMinValue = -$7FFFFFFF,
+ HB_MEMORY_MODE_DUPLICATE = 0,
+ HB_MEMORY_MODE_READONLY = 1,
+ HB_MEMORY_MODE_WRITABLE = 2,
+ HB_MEMORY_MODE_READONLY_MAY_MAKE_WRITABLE = 3,
+ Thb_memory_mode_tMaxValue = $7FFFFFFF
+ );
+ Thb_buffer_cluster_level_t = (
+ Thb_buffer_cluster_level_tMinValue = -$7FFFFFFF,
+ HB_BUFFER_CLUSTER_LEVEL_DEFAULT = 0,
+ HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES = 0,
+ HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS = 1,
+ HB_BUFFER_CLUSTER_LEVEL_CHARACTERS = 2,
+ Thb_buffer_cluster_level_tMaxValue = $7FFFFFFF
+ );
+ Thb_buffer_content_type_t = (
+ Thb_buffer_content_type_tMinValue = -$7FFFFFFF,
+ HB_BUFFER_CONTENT_TYPE_INVALID = 0,
+ HB_BUFFER_CONTENT_TYPE_UNICODE = 1,
+ HB_BUFFER_CONTENT_TYPE_GLYPHS = 2,
+ Thb_buffer_content_type_tMaxValue = $7FFFFFFF
+ );
+ Thb_buffer_serialize_format_t = (
+ Thb_buffer_serialize_format_tMinValue = -$7FFFFFFF,
+ HB_BUFFER_SERIALIZE_FORMAT_INVALID = 0,
+ HB_BUFFER_SERIALIZE_FORMAT_JSON = 1246973774,
+ HB_BUFFER_SERIALIZE_FORMAT_TEXT = 1413830740,
+ Thb_buffer_serialize_format_tMaxValue = $7FFFFFFF
+ );
+ Thb_buffer_diff_flags_tIdx = (
+ Thb_buffer_diff_flags_tIdxMinValue = 0,
+ HB_BUFFER_DIFF_FLAG_CONTENT_TYPE_MISMATCH = 0,
+ HB_BUFFER_DIFF_FLAG_LENGTH_MISMATCH = 1,
+ HB_BUFFER_DIFF_FLAG_NOTDEF_PRESENT = 2,
+ HB_BUFFER_DIFF_FLAG_DOTTED_CIRCLE_PRESENT = 3,
+ HB_BUFFER_DIFF_FLAG_CODEPOINT_MISMATCH = 4,
+ HB_BUFFER_DIFF_FLAG_CLUSTER_MISMATCH = 5,
+ HB_BUFFER_DIFF_FLAG_GLYPH_FLAGS_MISMATCH = 6,
+ HB_BUFFER_DIFF_FLAG_POSITION_MISMATCH = 7,
+ Thb_buffer_diff_flags_tIdxMaxValue = 31
+ );
+ Thb_buffer_diff_flags_t = Set of Thb_buffer_diff_flags_tIdx;
+const
+ HB_BUFFER_DIFF_FLAG_EQUAL = []; {0 = $00000000}
+
+type
+ Thb_buffer_flags_tIdx = (
+ Thb_buffer_flags_tIdxMinValue = 0,
+ HB_BUFFER_FLAG_BOT = 0,
+ HB_BUFFER_FLAG_EOT = 1,
+ HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES = 2,
+ HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES = 3,
+ HB_BUFFER_FLAG_DO_NOT_INSERT_DOTTED_CIRCLE = 4,
+ HB_BUFFER_FLAG_VERIFY = 5,
+ HB_BUFFER_FLAG_PRODUCE_UNSAFE_TO_CONCAT = 6,
+ HB_BUFFER_FLAG_PRODUCE_SAFE_TO_INSERT_TATWEEL = 7,
+ Thb_buffer_flags_tIdxMaxValue = 31
+ );
+ Thb_buffer_flags_t = Set of Thb_buffer_flags_tIdx;
+const
+ HB_BUFFER_FLAG_DEFAULT = []; {0 = $00000000}
+
+ HB_BUFFER_FLAG_DEFINED = [
+ HB_BUFFER_FLAG_BOT,
+ HB_BUFFER_FLAG_EOT,
+ HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES,
+ HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES,
+ HB_BUFFER_FLAG_DO_NOT_INSERT_DOTTED_CIRCLE,
+ HB_BUFFER_FLAG_VERIFY,
+ HB_BUFFER_FLAG_PRODUCE_UNSAFE_TO_CONCAT,
+ HB_BUFFER_FLAG_PRODUCE_SAFE_TO_INSERT_TATWEEL
+ ]; {255 = $000000FF}
+
+type
+ Thb_direction_t = (
+ Thb_direction_tMinValue = -$7FFFFFFF,
+ HB_DIRECTION_INVALID = 0,
+ HB_DIRECTION_LTR = 4,
+ HB_DIRECTION_RTL = 5,
+ HB_DIRECTION_TTB = 6,
+ HB_DIRECTION_BTT = 7,
+ Thb_direction_tMaxValue = $7FFFFFFF
+ );
+ Thb_script_t = (
+ Thb_script_tMinValue = -$7FFFFFFF,
+ HB_SCRIPT_INVALID = 0,
+ HB_SCRIPT_ADLAM = 1097100397,
+ HB_SCRIPT_CAUCASIAN_ALBANIAN = 1097295970,
+ HB_SCRIPT_AHOM = 1097363309,
+ HB_SCRIPT_ARABIC = 1098015074,
+ HB_SCRIPT_IMPERIAL_ARAMAIC = 1098018153,
+ HB_SCRIPT_ARMENIAN = 1098018158,
+ HB_SCRIPT_AVESTAN = 1098281844,
+ HB_SCRIPT_BALINESE = 1113681001,
+ HB_SCRIPT_BAMUM = 1113681269,
+ HB_SCRIPT_BASSA_VAH = 1113682803,
+ HB_SCRIPT_BATAK = 1113683051,
+ HB_SCRIPT_BENGALI = 1113943655,
+ HB_SCRIPT_BHAIKSUKI = 1114139507,
+ HB_SCRIPT_BOPOMOFO = 1114599535,
+ HB_SCRIPT_BRAHMI = 1114792296,
+ HB_SCRIPT_BRAILLE = 1114792297,
+ HB_SCRIPT_BUGINESE = 1114990441,
+ HB_SCRIPT_BUHID = 1114990692,
+ HB_SCRIPT_CHAKMA = 1130457965,
+ HB_SCRIPT_CANADIAN_SYLLABICS = 1130458739,
+ HB_SCRIPT_CARIAN = 1130459753,
+ HB_SCRIPT_CHAM = 1130914157,
+ HB_SCRIPT_CHEROKEE = 1130915186,
+ HB_SCRIPT_CHORASMIAN = 1130918515,
+ HB_SCRIPT_COPTIC = 1131376756,
+ HB_SCRIPT_CYPRO_MINOAN = 1131441518,
+ HB_SCRIPT_CYPRIOT = 1131442804,
+ HB_SCRIPT_CYRILLIC = 1132032620,
+ HB_SCRIPT_DEVANAGARI = 1147500129,
+ HB_SCRIPT_DIVES_AKURU = 1147756907,
+ HB_SCRIPT_DOGRA = 1148151666,
+ HB_SCRIPT_DESERET = 1148416628,
+ HB_SCRIPT_DUPLOYAN = 1148547180,
+ HB_SCRIPT_EGYPTIAN_HIEROGLYPHS = 1164409200,
+ HB_SCRIPT_ELBASAN = 1164730977,
+ HB_SCRIPT_ELYMAIC = 1164736877,
+ HB_SCRIPT_ETHIOPIC = 1165256809,
+ HB_SCRIPT_GEORGIAN = 1197830002,
+ HB_SCRIPT_GLAGOLITIC = 1198285159,
+ HB_SCRIPT_GUNJALA_GONDI = 1198485095,
+ HB_SCRIPT_MASARAM_GONDI = 1198485101,
+ HB_SCRIPT_GOTHIC = 1198486632,
+ HB_SCRIPT_GRANTHA = 1198678382,
+ HB_SCRIPT_GREEK = 1198679403,
+ HB_SCRIPT_GUJARATI = 1198877298,
+ HB_SCRIPT_GURMUKHI = 1198879349,
+ HB_SCRIPT_HANGUL = 1214344807,
+ HB_SCRIPT_HAN = 1214344809,
+ HB_SCRIPT_HANUNOO = 1214344815,
+ HB_SCRIPT_HATRAN = 1214346354,
+ HB_SCRIPT_HEBREW = 1214603890,
+ HB_SCRIPT_HIRAGANA = 1214870113,
+ HB_SCRIPT_ANATOLIAN_HIEROGLYPHS = 1215067511,
+ HB_SCRIPT_PAHAWH_HMONG = 1215131239,
+ HB_SCRIPT_NYIAKENG_PUACHUE_HMONG = 1215131248,
+ HB_SCRIPT_OLD_HUNGARIAN = 1215655527,
+ HB_SCRIPT_OLD_ITALIC = 1232363884,
+ HB_SCRIPT_JAVANESE = 1247901281,
+ HB_SCRIPT_KAYAH_LI = 1264675945,
+ HB_SCRIPT_KATAKANA = 1264676449,
+ HB_SCRIPT_KAWI = 1264678761,
+ HB_SCRIPT_KHAROSHTHI = 1265131890,
+ HB_SCRIPT_KHMER = 1265134962,
+ HB_SCRIPT_KHOJKI = 1265135466,
+ HB_SCRIPT_KHITAN_SMALL_SCRIPT = 1265202291,
+ HB_SCRIPT_KANNADA = 1265525857,
+ HB_SCRIPT_KAITHI = 1265920105,
+ HB_SCRIPT_TAI_THAM = 1281453665,
+ HB_SCRIPT_LAO = 1281453935,
+ HB_SCRIPT_LATIN = 1281455214,
+ HB_SCRIPT_LEPCHA = 1281716323,
+ HB_SCRIPT_LIMBU = 1281977698,
+ HB_SCRIPT_LINEAR_A = 1281977953,
+ HB_SCRIPT_LINEAR_B = 1281977954,
+ HB_SCRIPT_LISU = 1281979253,
+ HB_SCRIPT_LYCIAN = 1283023721,
+ HB_SCRIPT_LYDIAN = 1283023977,
+ HB_SCRIPT_MAHAJANI = 1298229354,
+ HB_SCRIPT_MAKASAR = 1298230113,
+ HB_SCRIPT_MANDAIC = 1298230884,
+ HB_SCRIPT_MANICHAEAN = 1298230889,
+ HB_SCRIPT_MARCHEN = 1298231907,
+ HB_SCRIPT_MEDEFAIDRIN = 1298490470,
+ HB_SCRIPT_MENDE_KIKAKUI = 1298493028,
+ HB_SCRIPT_MEROITIC_CURSIVE = 1298494051,
+ HB_SCRIPT_MEROITIC_HIEROGLYPHS = 1298494063,
+ HB_SCRIPT_MALAYALAM = 1298954605,
+ HB_SCRIPT_MODI = 1299145833,
+ HB_SCRIPT_MONGOLIAN = 1299148391,
+ HB_SCRIPT_MRO = 1299345263,
+ HB_SCRIPT_MEETEI_MAYEK = 1299473769,
+ HB_SCRIPT_MULTANI = 1299541108,
+ HB_SCRIPT_MYANMAR = 1299803506,
+ HB_SCRIPT_NAG_MUNDARI = 1315006317,
+ HB_SCRIPT_NANDINAGARI = 1315008100,
+ HB_SCRIPT_OLD_NORTH_ARABIAN = 1315009122,
+ HB_SCRIPT_NABATAEAN = 1315070324,
+ HB_SCRIPT_NEWA = 1315272545,
+ HB_SCRIPT_NKO = 1315663727,
+ HB_SCRIPT_NUSHU = 1316186229,
+ HB_SCRIPT_OGHAM = 1332175213,
+ HB_SCRIPT_OL_CHIKI = 1332503403,
+ HB_SCRIPT_OLD_TURKIC = 1332898664,
+ HB_SCRIPT_ORIYA = 1332902241,
+ HB_SCRIPT_OSAGE = 1332963173,
+ HB_SCRIPT_OSMANYA = 1332964705,
+ HB_SCRIPT_OLD_UYGHUR = 1333094258,
+ HB_SCRIPT_PALMYRENE = 1348562029,
+ HB_SCRIPT_PAU_CIN_HAU = 1348564323,
+ HB_SCRIPT_OLD_PERMIC = 1348825709,
+ HB_SCRIPT_PHAGS_PA = 1349017959,
+ HB_SCRIPT_INSCRIPTIONAL_PAHLAVI = 1349020777,
+ HB_SCRIPT_PSALTER_PAHLAVI = 1349020784,
+ HB_SCRIPT_PHOENICIAN = 1349021304,
+ HB_SCRIPT_MIAO = 1349284452,
+ HB_SCRIPT_INSCRIPTIONAL_PARTHIAN = 1349678185,
+ HB_SCRIPT_REJANG = 1382706791,
+ HB_SCRIPT_HANIFI_ROHINGYA = 1383032935,
+ HB_SCRIPT_RUNIC = 1383427698,
+ HB_SCRIPT_SAMARITAN = 1398893938,
+ HB_SCRIPT_OLD_SOUTH_ARABIAN = 1398895202,
+ HB_SCRIPT_SAURASHTRA = 1398895986,
+ HB_SCRIPT_SIGNWRITING = 1399287415,
+ HB_SCRIPT_SHAVIAN = 1399349623,
+ HB_SCRIPT_SHARADA = 1399353956,
+ HB_SCRIPT_SIDDHAM = 1399415908,
+ HB_SCRIPT_KHUDAWADI = 1399418468,
+ HB_SCRIPT_SINHALA = 1399418472,
+ HB_SCRIPT_SOGDIAN = 1399809892,
+ HB_SCRIPT_OLD_SOGDIAN = 1399809903,
+ HB_SCRIPT_SORA_SOMPENG = 1399812705,
+ HB_SCRIPT_SOYOMBO = 1399814511,
+ HB_SCRIPT_SUNDANESE = 1400204900,
+ HB_SCRIPT_SYLOTI_NAGRI = 1400466543,
+ HB_SCRIPT_SYRIAC = 1400468067,
+ HB_SCRIPT_TAGBANWA = 1415669602,
+ HB_SCRIPT_TAKRI = 1415670642,
+ HB_SCRIPT_TAI_LE = 1415670885,
+ HB_SCRIPT_NEW_TAI_LUE = 1415670901,
+ HB_SCRIPT_TAMIL = 1415671148,
+ HB_SCRIPT_TANGUT = 1415671399,
+ HB_SCRIPT_TAI_VIET = 1415673460,
+ HB_SCRIPT_TELUGU = 1415933045,
+ HB_SCRIPT_TIFINAGH = 1415999079,
+ HB_SCRIPT_TAGALOG = 1416064103,
+ HB_SCRIPT_THAANA = 1416126817,
+ HB_SCRIPT_THAI = 1416126825,
+ HB_SCRIPT_TIBETAN = 1416192628,
+ HB_SCRIPT_TIRHUTA = 1416196712,
+ HB_SCRIPT_TANGSA = 1416524641,
+ HB_SCRIPT_TOTO = 1416590447,
+ HB_SCRIPT_UGARITIC = 1432838514,
+ HB_SCRIPT_VAI = 1449224553,
+ HB_SCRIPT_VITHKUQI = 1449751656,
+ HB_SCRIPT_WARANG_CITI = 1466004065,
+ HB_SCRIPT_WANCHO = 1466132591,
+ HB_SCRIPT_OLD_PERSIAN = 1483761007,
+ HB_SCRIPT_CUNEIFORM = 1483961720,
+ HB_SCRIPT_YEZIDI = 1499822697,
+ HB_SCRIPT_YI = 1500080489,
+ HB_SCRIPT_ZANABAZAR_SQUARE = 1516334690,
+ HB_SCRIPT_INHERITED = 1516858984,
+ HB_SCRIPT_MATH = 1517122664,
+ HB_SCRIPT_COMMON = 1517910393,
+ HB_SCRIPT_UNKNOWN = 1517976186,
+ Thb_script_tMaxValue = $7FFFFFFF
+ );
+ Thb_buffer_serialize_flags_tIdx = (
+ Thb_buffer_serialize_flags_tIdxMinValue = 0,
+ HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS = 0,
+ HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS = 1,
+ HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES = 2,
+ HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS = 3,
+ HB_BUFFER_SERIALIZE_FLAG_GLYPH_FLAGS = 4,
+ HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES = 5,
+ Thb_buffer_serialize_flags_tIdxMaxValue = 31
+ );
+ Thb_buffer_serialize_flags_t = Set of Thb_buffer_serialize_flags_tIdx;
+const
+ HB_BUFFER_SERIALIZE_FLAG_DEFAULT = []; {0 = $00000000}
+
+ HB_BUFFER_SERIALIZE_FLAG_DEFINED = [
+ HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS,
+ HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS,
+ HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES,
+ HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS,
+ HB_BUFFER_SERIALIZE_FLAG_GLYPH_FLAGS,
+ HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES
+ ]; {63 = $0000003F}
+
+type
+ Thb_glyph_flags_tIdx = (
+ Thb_glyph_flags_tIdxMinValue = 0,
+ HB_GLYPH_FLAG_UNSAFE_TO_BREAK = 0,
+ HB_GLYPH_FLAG_UNSAFE_TO_CONCAT = 1,
+ HB_GLYPH_FLAG_SAFE_TO_INSERT_TATWEEL = 2,
+ Thb_glyph_flags_tIdxMaxValue = 31
+ );
+ Thb_glyph_flags_t = Set of Thb_glyph_flags_tIdx;
+const
+ HB_GLYPH_FLAG_DEFINED = [
+ HB_GLYPH_FLAG_UNSAFE_TO_BREAK,
+ HB_GLYPH_FLAG_UNSAFE_TO_CONCAT,
+ HB_GLYPH_FLAG_SAFE_TO_INSERT_TATWEEL
+ ]; {7 = $00000007}
+
+type
+ Thb_ot_color_palette_flags_tIdx = (
+ Thb_ot_color_palette_flags_tIdxMinValue = 0,
+ HB_OT_COLOR_PALETTE_FLAG_USABLE_WITH_LIGHT_BACKGROUND = 0,
+ HB_OT_COLOR_PALETTE_FLAG_USABLE_WITH_DARK_BACKGROUND = 1,
+ Thb_ot_color_palette_flags_tIdxMaxValue = 31
+ );
+ Thb_ot_color_palette_flags_t = Set of Thb_ot_color_palette_flags_tIdx;
+const
+ HB_OT_COLOR_PALETTE_FLAG_DEFAULT = []; {0 = $00000000}
+
+type
+ Thb_ot_layout_baseline_tag_t = (
+ Thb_ot_layout_baseline_tag_tMinValue = -$7FFFFFFF,
+ HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_CENTRAL = 1231251043,
+ HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_CENTRAL = 1231315813,
+ HB_OT_LAYOUT_BASELINE_TAG_HANGING = 1751215719,
+ HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_BOTTOM_OR_LEFT = 1768121954,
+ HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_TOP_OR_RIGHT = 1768121972,
+ HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_BOTTOM_OR_LEFT = 1768187247,
+ HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_TOP_OR_RIGHT = 1768191088,
+ HB_OT_LAYOUT_BASELINE_TAG_MATH = 1835103336,
+ HB_OT_LAYOUT_BASELINE_TAG_ROMAN = 1919905134,
+ Thb_ot_layout_baseline_tag_tMaxValue = $7FFFFFFF
+ );
+ Thb_ot_layout_glyph_class_t = (
+ Thb_ot_layout_glyph_class_tMinValue = -$7FFFFFFF,
+ HB_OT_LAYOUT_GLYPH_CLASS_UNCLASSIFIED = 0,
+ HB_OT_LAYOUT_GLYPH_CLASS_BASE_GLYPH = 1,
+ HB_OT_LAYOUT_GLYPH_CLASS_LIGATURE = 2,
+ HB_OT_LAYOUT_GLYPH_CLASS_MARK = 3,
+ HB_OT_LAYOUT_GLYPH_CLASS_COMPONENT = 4,
+ Thb_ot_layout_glyph_class_tMaxValue = $7FFFFFFF
+ );
+ Thb_ot_math_constant_t = (
+ Thb_ot_math_constant_tMinValue = -$7FFFFFFF,
+ HB_OT_MATH_CONSTANT_SCRIPT_PERCENT_SCALE_DOWN = 0,
+ HB_OT_MATH_CONSTANT_SCRIPT_SCRIPT_PERCENT_SCALE_DOWN = 1,
+ HB_OT_MATH_CONSTANT_DELIMITED_SUB_FORMULA_MIN_HEIGHT = 2,
+ HB_OT_MATH_CONSTANT_DISPLAY_OPERATOR_MIN_HEIGHT = 3,
+ HB_OT_MATH_CONSTANT_MATH_LEADING = 4,
+ HB_OT_MATH_CONSTANT_AXIS_HEIGHT = 5,
+ HB_OT_MATH_CONSTANT_ACCENT_BASE_HEIGHT = 6,
+ HB_OT_MATH_CONSTANT_FLATTENED_ACCENT_BASE_HEIGHT = 7,
+ HB_OT_MATH_CONSTANT_SUBSCRIPT_SHIFT_DOWN = 8,
+ HB_OT_MATH_CONSTANT_SUBSCRIPT_TOP_MAX = 9,
+ HB_OT_MATH_CONSTANT_SUBSCRIPT_BASELINE_DROP_MIN = 10,
+ HB_OT_MATH_CONSTANT_SUPERSCRIPT_SHIFT_UP = 11,
+ HB_OT_MATH_CONSTANT_SUPERSCRIPT_SHIFT_UP_CRAMPED = 12,
+ HB_OT_MATH_CONSTANT_SUPERSCRIPT_BOTTOM_MIN = 13,
+ HB_OT_MATH_CONSTANT_SUPERSCRIPT_BASELINE_DROP_MAX = 14,
+ HB_OT_MATH_CONSTANT_SUB_SUPERSCRIPT_GAP_MIN = 15,
+ HB_OT_MATH_CONSTANT_SUPERSCRIPT_BOTTOM_MAX_WITH_SUBSCRIPT = 16,
+ HB_OT_MATH_CONSTANT_SPACE_AFTER_SCRIPT = 17,
+ HB_OT_MATH_CONSTANT_UPPER_LIMIT_GAP_MIN = 18,
+ HB_OT_MATH_CONSTANT_UPPER_LIMIT_BASELINE_RISE_MIN = 19,
+ HB_OT_MATH_CONSTANT_LOWER_LIMIT_GAP_MIN = 20,
+ HB_OT_MATH_CONSTANT_LOWER_LIMIT_BASELINE_DROP_MIN = 21,
+ HB_OT_MATH_CONSTANT_STACK_TOP_SHIFT_UP = 22,
+ HB_OT_MATH_CONSTANT_STACK_TOP_DISPLAY_STYLE_SHIFT_UP = 23,
+ HB_OT_MATH_CONSTANT_STACK_BOTTOM_SHIFT_DOWN = 24,
+ HB_OT_MATH_CONSTANT_STACK_BOTTOM_DISPLAY_STYLE_SHIFT_DOWN = 25,
+ HB_OT_MATH_CONSTANT_STACK_GAP_MIN = 26,
+ HB_OT_MATH_CONSTANT_STACK_DISPLAY_STYLE_GAP_MIN = 27,
+ HB_OT_MATH_CONSTANT_STRETCH_STACK_TOP_SHIFT_UP = 28,
+ HB_OT_MATH_CONSTANT_STRETCH_STACK_BOTTOM_SHIFT_DOWN = 29,
+ HB_OT_MATH_CONSTANT_STRETCH_STACK_GAP_ABOVE_MIN = 30,
+ HB_OT_MATH_CONSTANT_STRETCH_STACK_GAP_BELOW_MIN = 31,
+ HB_OT_MATH_CONSTANT_FRACTION_NUMERATOR_SHIFT_UP = 32,
+ HB_OT_MATH_CONSTANT_FRACTION_NUMERATOR_DISPLAY_STYLE_SHIFT_UP = 33,
+ HB_OT_MATH_CONSTANT_FRACTION_DENOMINATOR_SHIFT_DOWN = 34,
+ HB_OT_MATH_CONSTANT_FRACTION_DENOMINATOR_DISPLAY_STYLE_SHIFT_DOWN = 35,
+ HB_OT_MATH_CONSTANT_FRACTION_NUMERATOR_GAP_MIN = 36,
+ HB_OT_MATH_CONSTANT_FRACTION_NUM_DISPLAY_STYLE_GAP_MIN = 37,
+ HB_OT_MATH_CONSTANT_FRACTION_RULE_THICKNESS = 38,
+ HB_OT_MATH_CONSTANT_FRACTION_DENOMINATOR_GAP_MIN = 39,
+ HB_OT_MATH_CONSTANT_FRACTION_DENOM_DISPLAY_STYLE_GAP_MIN = 40,
+ HB_OT_MATH_CONSTANT_SKEWED_FRACTION_HORIZONTAL_GAP = 41,
+ HB_OT_MATH_CONSTANT_SKEWED_FRACTION_VERTICAL_GAP = 42,
+ HB_OT_MATH_CONSTANT_OVERBAR_VERTICAL_GAP = 43,
+ HB_OT_MATH_CONSTANT_OVERBAR_RULE_THICKNESS = 44,
+ HB_OT_MATH_CONSTANT_OVERBAR_EXTRA_ASCENDER = 45,
+ HB_OT_MATH_CONSTANT_UNDERBAR_VERTICAL_GAP = 46,
+ HB_OT_MATH_CONSTANT_UNDERBAR_RULE_THICKNESS = 47,
+ HB_OT_MATH_CONSTANT_UNDERBAR_EXTRA_DESCENDER = 48,
+ HB_OT_MATH_CONSTANT_RADICAL_VERTICAL_GAP = 49,
+ HB_OT_MATH_CONSTANT_RADICAL_DISPLAY_STYLE_VERTICAL_GAP = 50,
+ HB_OT_MATH_CONSTANT_RADICAL_RULE_THICKNESS = 51,
+ HB_OT_MATH_CONSTANT_RADICAL_EXTRA_ASCENDER = 52,
+ HB_OT_MATH_CONSTANT_RADICAL_KERN_BEFORE_DEGREE = 53,
+ HB_OT_MATH_CONSTANT_RADICAL_KERN_AFTER_DEGREE = 54,
+ HB_OT_MATH_CONSTANT_RADICAL_DEGREE_BOTTOM_RAISE_PERCENT = 55,
+ Thb_ot_math_constant_tMaxValue = $7FFFFFFF
+ );
+ Thb_ot_math_glyph_part_flags_tIdx = (
+ Thb_ot_math_glyph_part_flags_tIdxMinValue = 0,
+ HB_OT_MATH_GLYPH_PART_FLAG_EXTENDER = 0,
+ Thb_ot_math_glyph_part_flags_tIdxMaxValue = 31
+ );
+ Thb_ot_math_glyph_part_flags_t = Set of Thb_ot_math_glyph_part_flags_tIdx;
+ Thb_ot_math_kern_t = (
+ Thb_ot_math_kern_tMinValue = -$7FFFFFFF,
+ HB_OT_MATH_KERN_TOP_RIGHT = 0,
+ HB_OT_MATH_KERN_TOP_LEFT = 1,
+ HB_OT_MATH_KERN_BOTTOM_RIGHT = 2,
+ HB_OT_MATH_KERN_BOTTOM_LEFT = 3,
+ Thb_ot_math_kern_tMaxValue = $7FFFFFFF
+ );
+ Thb_ot_meta_tag_t = (
+ Thb_ot_meta_tag_tMinValue = -$7FFFFFFF,
+ HB_OT_META_TAG_DESIGN_LANGUAGES = 1684827751,
+ HB_OT_META_TAG_SUPPORTED_LANGUAGES = 1936485991,
+ Thb_ot_meta_tag_tMaxValue = $7FFFFFFF
+ );
+ Thb_ot_metrics_tag_t = (
+ Thb_ot_metrics_tag_tMinValue = -$7FFFFFFF,
+ HB_OT_METRICS_TAG_CAP_HEIGHT = 1668311156,
+ HB_OT_METRICS_TAG_HORIZONTAL_ASCENDER = 1751216995,
+ HB_OT_METRICS_TAG_HORIZONTAL_CLIPPING_ASCENT = 1751346273,
+ HB_OT_METRICS_TAG_HORIZONTAL_CLIPPING_DESCENT = 1751346276,
+ HB_OT_METRICS_TAG_HORIZONTAL_CARET_OFFSET = 1751347046,
+ HB_OT_METRICS_TAG_HORIZONTAL_CARET_RUN = 1751347822,
+ HB_OT_METRICS_TAG_HORIZONTAL_CARET_RISE = 1751347827,
+ HB_OT_METRICS_TAG_HORIZONTAL_DESCENDER = 1751413603,
+ HB_OT_METRICS_TAG_HORIZONTAL_LINE_GAP = 1751934832,
+ HB_OT_METRICS_TAG_SUBSCRIPT_EM_X_OFFSET = 1935833199,
+ HB_OT_METRICS_TAG_SUBSCRIPT_EM_X_SIZE = 1935833203,
+ HB_OT_METRICS_TAG_SUBSCRIPT_EM_Y_OFFSET = 1935833455,
+ HB_OT_METRICS_TAG_SUBSCRIPT_EM_Y_SIZE = 1935833459,
+ HB_OT_METRICS_TAG_SUPERSCRIPT_EM_X_OFFSET = 1936750703,
+ HB_OT_METRICS_TAG_SUPERSCRIPT_EM_X_SIZE = 1936750707,
+ HB_OT_METRICS_TAG_SUPERSCRIPT_EM_Y_OFFSET = 1936750959,
+ HB_OT_METRICS_TAG_SUPERSCRIPT_EM_Y_SIZE = 1936750963,
+ HB_OT_METRICS_TAG_STRIKEOUT_OFFSET = 1937011311,
+ HB_OT_METRICS_TAG_STRIKEOUT_SIZE = 1937011315,
+ HB_OT_METRICS_TAG_UNDERLINE_OFFSET = 1970168943,
+ HB_OT_METRICS_TAG_UNDERLINE_SIZE = 1970168947,
+ HB_OT_METRICS_TAG_VERTICAL_ASCENDER = 1986098019,
+ HB_OT_METRICS_TAG_VERTICAL_CARET_OFFSET = 1986228070,
+ HB_OT_METRICS_TAG_VERTICAL_CARET_RUN = 1986228846,
+ HB_OT_METRICS_TAG_VERTICAL_CARET_RISE = 1986228851,
+ HB_OT_METRICS_TAG_VERTICAL_DESCENDER = 1986294627,
+ HB_OT_METRICS_TAG_VERTICAL_LINE_GAP = 1986815856,
+ HB_OT_METRICS_TAG_X_HEIGHT = 2020108148,
+ Thb_ot_metrics_tag_tMaxValue = $7FFFFFFF
+ );
+ Thb_ot_var_axis_flags_tIdx = (
+ Thb_ot_var_axis_flags_tIdxMinValue = 0,
+ HB_OT_VAR_AXIS_FLAG_HIDDEN = 0,
+ Thb_ot_var_axis_flags_tIdxMaxValue = 31
+ );
+ Thb_ot_var_axis_flags_t = Set of Thb_ot_var_axis_flags_tIdx;
+ Thb_style_tag_t = (
+ Thb_style_tag_tMinValue = -$7FFFFFFF,
+ HB_STYLE_TAG_SLANT_RATIO = 1399615092,
+ HB_STYLE_TAG_ITALIC = 1769234796,
+ HB_STYLE_TAG_OPTICAL_SIZE = 1869640570,
+ HB_STYLE_TAG_SLANT_ANGLE = 1936486004,
+ HB_STYLE_TAG_WIDTH = 2003072104,
+ HB_STYLE_TAG_WEIGHT = 2003265652,
+ Thb_style_tag_tMaxValue = $7FFFFFFF
+ );
+ Thb_unicode_combining_class_t = (
+ Thb_unicode_combining_class_tMinValue = -$7FFFFFFF,
+ HB_UNICODE_COMBINING_CLASS_NOT_REORDERED = 0,
+ HB_UNICODE_COMBINING_CLASS_OVERLAY = 1,
+ HB_UNICODE_COMBINING_CLASS_NUKTA = 7,
+ HB_UNICODE_COMBINING_CLASS_KANA_VOICING = 8,
+ HB_UNICODE_COMBINING_CLASS_VIRAMA = 9,
+ HB_UNICODE_COMBINING_CLASS_CCC10 = 10,
+ HB_UNICODE_COMBINING_CLASS_CCC11 = 11,
+ HB_UNICODE_COMBINING_CLASS_CCC12 = 12,
+ HB_UNICODE_COMBINING_CLASS_CCC13 = 13,
+ HB_UNICODE_COMBINING_CLASS_CCC14 = 14,
+ HB_UNICODE_COMBINING_CLASS_CCC15 = 15,
+ HB_UNICODE_COMBINING_CLASS_CCC16 = 16,
+ HB_UNICODE_COMBINING_CLASS_CCC17 = 17,
+ HB_UNICODE_COMBINING_CLASS_CCC18 = 18,
+ HB_UNICODE_COMBINING_CLASS_CCC19 = 19,
+ HB_UNICODE_COMBINING_CLASS_CCC20 = 20,
+ HB_UNICODE_COMBINING_CLASS_CCC21 = 21,
+ HB_UNICODE_COMBINING_CLASS_CCC22 = 22,
+ HB_UNICODE_COMBINING_CLASS_CCC23 = 23,
+ HB_UNICODE_COMBINING_CLASS_CCC24 = 24,
+ HB_UNICODE_COMBINING_CLASS_CCC25 = 25,
+ HB_UNICODE_COMBINING_CLASS_CCC26 = 26,
+ HB_UNICODE_COMBINING_CLASS_CCC27 = 27,
+ HB_UNICODE_COMBINING_CLASS_CCC28 = 28,
+ HB_UNICODE_COMBINING_CLASS_CCC29 = 29,
+ HB_UNICODE_COMBINING_CLASS_CCC30 = 30,
+ HB_UNICODE_COMBINING_CLASS_CCC31 = 31,
+ HB_UNICODE_COMBINING_CLASS_CCC32 = 32,
+ HB_UNICODE_COMBINING_CLASS_CCC33 = 33,
+ HB_UNICODE_COMBINING_CLASS_CCC34 = 34,
+ HB_UNICODE_COMBINING_CLASS_CCC35 = 35,
+ HB_UNICODE_COMBINING_CLASS_CCC36 = 36,
+ HB_UNICODE_COMBINING_CLASS_CCC84 = 84,
+ HB_UNICODE_COMBINING_CLASS_CCC91 = 91,
+ HB_UNICODE_COMBINING_CLASS_CCC103 = 103,
+ HB_UNICODE_COMBINING_CLASS_CCC107 = 107,
+ HB_UNICODE_COMBINING_CLASS_CCC118 = 118,
+ HB_UNICODE_COMBINING_CLASS_CCC122 = 122,
+ HB_UNICODE_COMBINING_CLASS_CCC129 = 129,
+ HB_UNICODE_COMBINING_CLASS_CCC130 = 130,
+ HB_UNICODE_COMBINING_CLASS_CCC133 = 132,
+ HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW_LEFT = 200,
+ HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW = 202,
+ HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE = 214,
+ HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE_RIGHT = 216,
+ HB_UNICODE_COMBINING_CLASS_BELOW_LEFT = 218,
+ HB_UNICODE_COMBINING_CLASS_BELOW = 220,
+ HB_UNICODE_COMBINING_CLASS_BELOW_RIGHT = 222,
+ HB_UNICODE_COMBINING_CLASS_LEFT = 224,
+ HB_UNICODE_COMBINING_CLASS_RIGHT = 226,
+ HB_UNICODE_COMBINING_CLASS_ABOVE_LEFT = 228,
+ HB_UNICODE_COMBINING_CLASS_ABOVE = 230,
+ HB_UNICODE_COMBINING_CLASS_ABOVE_RIGHT = 232,
+ HB_UNICODE_COMBINING_CLASS_DOUBLE_BELOW = 233,
+ HB_UNICODE_COMBINING_CLASS_DOUBLE_ABOVE = 234,
+ HB_UNICODE_COMBINING_CLASS_IOTA_SUBSCRIPT = 240,
+ HB_UNICODE_COMBINING_CLASS_INVALID = 255,
+ Thb_unicode_combining_class_tMaxValue = $7FFFFFFF
+ );
+ Thb_unicode_general_category_t = (
+ Thb_unicode_general_category_tMinValue = -$7FFFFFFF,
+ HB_UNICODE_GENERAL_CATEGORY_CONTROL = 0,
+ HB_UNICODE_GENERAL_CATEGORY_FORMAT = 1,
+ HB_UNICODE_GENERAL_CATEGORY_UNASSIGNED = 2,
+ HB_UNICODE_GENERAL_CATEGORY_PRIVATE_USE = 3,
+ HB_UNICODE_GENERAL_CATEGORY_SURROGATE = 4,
+ HB_UNICODE_GENERAL_CATEGORY_LOWERCASE_LETTER = 5,
+ HB_UNICODE_GENERAL_CATEGORY_MODIFIER_LETTER = 6,
+ HB_UNICODE_GENERAL_CATEGORY_OTHER_LETTER = 7,
+ HB_UNICODE_GENERAL_CATEGORY_TITLECASE_LETTER = 8,
+ HB_UNICODE_GENERAL_CATEGORY_UPPERCASE_LETTER = 9,
+ HB_UNICODE_GENERAL_CATEGORY_SPACING_MARK = 10,
+ HB_UNICODE_GENERAL_CATEGORY_ENCLOSING_MARK = 11,
+ HB_UNICODE_GENERAL_CATEGORY_NON_SPACING_MARK = 12,
+ HB_UNICODE_GENERAL_CATEGORY_DECIMAL_NUMBER = 13,
+ HB_UNICODE_GENERAL_CATEGORY_LETTER_NUMBER = 14,
+ HB_UNICODE_GENERAL_CATEGORY_OTHER_NUMBER = 15,
+ HB_UNICODE_GENERAL_CATEGORY_CONNECT_PUNCTUATION = 16,
+ HB_UNICODE_GENERAL_CATEGORY_DASH_PUNCTUATION = 17,
+ HB_UNICODE_GENERAL_CATEGORY_CLOSE_PUNCTUATION = 18,
+ HB_UNICODE_GENERAL_CATEGORY_FINAL_PUNCTUATION = 19,
+ HB_UNICODE_GENERAL_CATEGORY_INITIAL_PUNCTUATION = 20,
+ HB_UNICODE_GENERAL_CATEGORY_OTHER_PUNCTUATION = 21,
+ HB_UNICODE_GENERAL_CATEGORY_OPEN_PUNCTUATION = 22,
+ HB_UNICODE_GENERAL_CATEGORY_CURRENCY_SYMBOL = 23,
+ HB_UNICODE_GENERAL_CATEGORY_MODIFIER_SYMBOL = 24,
+ HB_UNICODE_GENERAL_CATEGORY_MATH_SYMBOL = 25,
+ HB_UNICODE_GENERAL_CATEGORY_OTHER_SYMBOL = 26,
+ HB_UNICODE_GENERAL_CATEGORY_LINE_SEPARATOR = 27,
+ HB_UNICODE_GENERAL_CATEGORY_PARAGRAPH_SEPARATOR = 28,
+ HB_UNICODE_GENERAL_CATEGORY_SPACE_SEPARATOR = 29,
+ Thb_unicode_general_category_tMaxValue = $7FFFFFFF
+ );
+type
+
+
+ { Thb_bool_t }
+ PPhb_bool_t = ^Phb_bool_t;
+ Phb_bool_t = ^Thb_bool_t;
+ Thb_bool_t = gint;
+
+
+ { Thb_codepoint_t }
+ PPPhb_codepoint_t = ^PPhb_codepoint_t;
+ PPhb_codepoint_t = ^Phb_codepoint_t;
+ Phb_codepoint_t = ^Thb_codepoint_t;
+ Thb_codepoint_t = guint32;
+
+
+ { Thb_color_t }
+ PPPhb_color_t = ^PPhb_color_t;
+ PPhb_color_t = ^Phb_color_t;
+ Phb_color_t = ^Thb_color_t;
+ Thb_color_t = guint32;
+
+
+ { Thb_font_t }
+ PPhb_font_t = ^Phb_font_t;
+ Phb_font_t = ^Thb_font_t;
+
+
+ { Thb_font_extents_t }
+ PPhb_font_extents_t = ^Phb_font_extents_t;
+ Phb_font_extents_t = ^Thb_font_extents_t;
+ Thb_font_get_font_extents_func_t = function(font: Phb_font_t; font_data: Pgpointer; extents: Phb_font_extents_t; user_data: Pgpointer): Thb_bool_t; cdecl;
+
+
+ { Thb_font_get_font_h_extents_func_t }
+ PPhb_font_get_font_h_extents_func_t = ^Phb_font_get_font_h_extents_func_t;
+ Phb_font_get_font_h_extents_func_t = ^Thb_font_get_font_h_extents_func_t;
+ Thb_font_get_font_h_extents_func_t = Thb_font_get_font_extents_func_t;
+
+
+ { Thb_font_get_font_v_extents_func_t }
+ PPhb_font_get_font_v_extents_func_t = ^Phb_font_get_font_v_extents_func_t;
+ Phb_font_get_font_v_extents_func_t = ^Thb_font_get_font_v_extents_func_t;
+ Thb_font_get_font_v_extents_func_t = Thb_font_get_font_extents_func_t;
+
+
+ { Thb_position_t }
+ PPPhb_position_t = ^PPhb_position_t;
+ PPhb_position_t = ^Phb_position_t;
+ Phb_position_t = ^Thb_position_t;
+ Thb_position_t = gint32;
+ Thb_font_get_glyph_advance_func_t = function(font: Phb_font_t; font_data: Pgpointer; glyph: Thb_codepoint_t; user_data: Pgpointer): Thb_position_t; cdecl;
+
+
+ { Thb_font_get_glyph_h_advance_func_t }
+ PPhb_font_get_glyph_h_advance_func_t = ^Phb_font_get_glyph_h_advance_func_t;
+ Phb_font_get_glyph_h_advance_func_t = ^Thb_font_get_glyph_h_advance_func_t;
+ Thb_font_get_glyph_h_advance_func_t = Thb_font_get_glyph_advance_func_t;
+ Thb_font_get_glyph_advances_func_t = procedure(font: Phb_font_t; font_data: Pgpointer; count: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint; first_advance: Phb_position_t; advance_stride: guint; user_data: Pgpointer); cdecl;
+
+
+ { Thb_font_get_glyph_h_advances_func_t }
+ PPhb_font_get_glyph_h_advances_func_t = ^Phb_font_get_glyph_h_advances_func_t;
+ Phb_font_get_glyph_h_advances_func_t = ^Thb_font_get_glyph_h_advances_func_t;
+ Thb_font_get_glyph_h_advances_func_t = Thb_font_get_glyph_advances_func_t;
+ Thb_font_get_glyph_kerning_func_t = function(font: Phb_font_t; font_data: Pgpointer; first_glyph: Thb_codepoint_t; second_glyph: Thb_codepoint_t; user_data: Pgpointer): Thb_position_t; cdecl;
+
+
+ { Thb_font_get_glyph_h_kerning_func_t }
+ PPhb_font_get_glyph_h_kerning_func_t = ^Phb_font_get_glyph_h_kerning_func_t;
+ Phb_font_get_glyph_h_kerning_func_t = ^Thb_font_get_glyph_h_kerning_func_t;
+ Thb_font_get_glyph_h_kerning_func_t = Thb_font_get_glyph_kerning_func_t;
+ Thb_font_get_glyph_origin_func_t = function(font: Phb_font_t; font_data: Pgpointer; glyph: Thb_codepoint_t; x: Phb_position_t; y: Phb_position_t; user_data: Pgpointer): Thb_bool_t; cdecl;
+
+
+ { Thb_font_get_glyph_h_origin_func_t }
+ PPhb_font_get_glyph_h_origin_func_t = ^Phb_font_get_glyph_h_origin_func_t;
+ Phb_font_get_glyph_h_origin_func_t = ^Thb_font_get_glyph_h_origin_func_t;
+ Thb_font_get_glyph_h_origin_func_t = Thb_font_get_glyph_origin_func_t;
+
+
+ { Thb_font_get_glyph_v_advance_func_t }
+ PPhb_font_get_glyph_v_advance_func_t = ^Phb_font_get_glyph_v_advance_func_t;
+ Phb_font_get_glyph_v_advance_func_t = ^Thb_font_get_glyph_v_advance_func_t;
+ Thb_font_get_glyph_v_advance_func_t = Thb_font_get_glyph_advance_func_t;
+
+
+ { Thb_font_get_glyph_v_advances_func_t }
+ PPhb_font_get_glyph_v_advances_func_t = ^Phb_font_get_glyph_v_advances_func_t;
+ Phb_font_get_glyph_v_advances_func_t = ^Thb_font_get_glyph_v_advances_func_t;
+ Thb_font_get_glyph_v_advances_func_t = Thb_font_get_glyph_advances_func_t;
+
+
+ { Thb_font_get_glyph_v_kerning_func_t }
+ PPhb_font_get_glyph_v_kerning_func_t = ^Phb_font_get_glyph_v_kerning_func_t;
+ Phb_font_get_glyph_v_kerning_func_t = ^Thb_font_get_glyph_v_kerning_func_t;
+ Thb_font_get_glyph_v_kerning_func_t = Thb_font_get_glyph_kerning_func_t;
+
+
+ { Thb_font_get_glyph_v_origin_func_t }
+ PPhb_font_get_glyph_v_origin_func_t = ^Phb_font_get_glyph_v_origin_func_t;
+ Phb_font_get_glyph_v_origin_func_t = ^Thb_font_get_glyph_v_origin_func_t;
+ Thb_font_get_glyph_v_origin_func_t = Thb_font_get_glyph_origin_func_t;
+
+
+ { Thb_mask_t }
+ PPhb_mask_t = ^Phb_mask_t;
+ Phb_mask_t = ^Thb_mask_t;
+ Thb_mask_t = guint32;
+
+
+ { Thb_ot_name_id_t }
+ PPhb_ot_name_id_t = ^Phb_ot_name_id_t;
+ Phb_ot_name_id_t = ^Thb_ot_name_id_t;
+ Thb_ot_name_id_t = guint;
+
+
+ { Thb_tag_t }
+ PPPhb_tag_t = ^PPhb_tag_t;
+ PPhb_tag_t = ^Phb_tag_t;
+ Phb_tag_t = ^Thb_tag_t;
+ Thb_tag_t = guint32;
+
+
+ { Thb_language_t }
+ PPhb_language_t = ^Phb_language_t;
+ Phb_language_t = ^Thb_language_t;
+ Thb_language_t = object
+ function _string: Pgchar; cdecl; inline;
+ end;
+
+
+ { Thb_aat_layout_feature_selector_t }
+ PPhb_aat_layout_feature_selector_t = ^Phb_aat_layout_feature_selector_t;
+ Phb_aat_layout_feature_selector_t = ^Thb_aat_layout_feature_selector_t;
+
+
+ { Thb_aat_layout_feature_selector_info_t }
+ PPPhb_aat_layout_feature_selector_info_t = ^PPhb_aat_layout_feature_selector_info_t;
+ PPhb_aat_layout_feature_selector_info_t = ^Phb_aat_layout_feature_selector_info_t;
+ Phb_aat_layout_feature_selector_info_t = ^Thb_aat_layout_feature_selector_info_t;
+
+ Thb_aat_layout_feature_selector_info_t = record
+ name_id: Thb_ot_name_id_t;
+ enable: Thb_aat_layout_feature_selector_t;
+ disable: Thb_aat_layout_feature_selector_t;
+ reserved: guint;
+ end;
+
+
+
+
+ { Thb_face_t }
+ PPhb_face_t = ^Phb_face_t;
+ Phb_face_t = ^Thb_face_t;
+ Thb_face_t = object
+ end;
+
+
+ { Thb_aat_layout_feature_type_t }
+ PPhb_aat_layout_feature_type_t = ^Phb_aat_layout_feature_type_t;
+ Phb_aat_layout_feature_type_t = ^Thb_aat_layout_feature_type_t;
+
+
+ { Thb_blob_t }
+ PPhb_blob_t = ^Phb_blob_t;
+ Phb_blob_t = ^Thb_blob_t;
+ Thb_blob_t = object
+ end;
+
+
+ { Thb_memory_mode_t }
+ PPhb_memory_mode_t = ^Phb_memory_mode_t;
+ Phb_memory_mode_t = ^Thb_memory_mode_t;
+ Thb_destroy_func_t = procedure(user_data: Pgpointer); cdecl;
+
+
+ { Thb_user_data_key_t }
+ PPhb_user_data_key_t = ^Phb_user_data_key_t;
+ Phb_user_data_key_t = ^Thb_user_data_key_t;
+ Thb_user_data_key_t = object
+ unused: gchar;
+ end;
+
+
+ { Thb_buffer_t }
+ PPhb_buffer_t = ^Phb_buffer_t;
+ Phb_buffer_t = ^Thb_buffer_t;
+ Thb_buffer_t = object
+ end;
+
+
+ { Thb_buffer_cluster_level_t }
+ PPhb_buffer_cluster_level_t = ^Phb_buffer_cluster_level_t;
+ Phb_buffer_cluster_level_t = ^Thb_buffer_cluster_level_t;
+
+
+ { Thb_buffer_content_type_t }
+ PPhb_buffer_content_type_t = ^Phb_buffer_content_type_t;
+ Phb_buffer_content_type_t = ^Thb_buffer_content_type_t;
+ Thb_font_t = object
+ end;
+
+
+ { Thb_buffer_serialize_format_t }
+ PPhb_buffer_serialize_format_t = ^Phb_buffer_serialize_format_t;
+ Phb_buffer_serialize_format_t = ^Thb_buffer_serialize_format_t;
+
+
+ { Thb_buffer_diff_flags_t }
+ PPhb_buffer_diff_flags_t = ^Phb_buffer_diff_flags_t;
+ Phb_buffer_diff_flags_t = ^Thb_buffer_diff_flags_t;
+
+
+ { Thb_buffer_flags_t }
+ PPhb_buffer_flags_t = ^Phb_buffer_flags_t;
+ Phb_buffer_flags_t = ^Thb_buffer_flags_t;
+
+
+ { Thb_direction_t }
+ PPhb_direction_t = ^Phb_direction_t;
+ Phb_direction_t = ^Thb_direction_t;
+
+
+ { Thb_glyph_info_t }
+ PPhb_glyph_info_t = ^Phb_glyph_info_t;
+ Phb_glyph_info_t = ^Thb_glyph_info_t;
+
+
+ { Thb_var_int_t }
+ PPhb_var_int_t = ^Phb_var_int_t;
+ Phb_var_int_t = ^Thb_var_int_t;
+ Thb_var_int_t = record
+ case longint of
+ 0 : (u32: guint32);
+ 1 : (i32: gint32);
+ 2 : (u16: array [0..1] of guint16);
+ 3 : (i16: array [0..1] of gint16);
+ 4 : (u8: array [0..3] of guint8);
+ 5 : (i8: array [0..3] of gint8);
+ end;
+
+
+ Thb_glyph_info_t = object
+ codepoint: Thb_codepoint_t;
+ mask: Thb_mask_t;
+ cluster: guint32;
+ var1: Thb_var_int_t;
+ var2: Thb_var_int_t;
+ end;
+
+
+ { Thb_glyph_position_t }
+ PPhb_glyph_position_t = ^Phb_glyph_position_t;
+ Phb_glyph_position_t = ^Thb_glyph_position_t;
+ Thb_glyph_position_t = object
+ x_advance: Thb_position_t;
+ y_advance: Thb_position_t;
+ x_offset: Thb_position_t;
+ y_offset: Thb_position_t;
+ var_: Thb_var_int_t;
+ end;
+
+
+ { Thb_script_t }
+ PPhb_script_t = ^Phb_script_t;
+ Phb_script_t = ^Thb_script_t;
+
+
+ { Thb_segment_properties_t }
+ PPhb_segment_properties_t = ^Phb_segment_properties_t;
+ Phb_segment_properties_t = ^Thb_segment_properties_t;
+ Thb_segment_properties_t = object
+ direction: Thb_direction_t;
+ script: Thb_script_t;
+ language: Thb_language_t;
+ reserved1: Pgpointer;
+ reserved2: Pgpointer;
+ end;
+
+
+ { Thb_unicode_funcs_t }
+ PPhb_unicode_funcs_t = ^Phb_unicode_funcs_t;
+ Phb_unicode_funcs_t = ^Thb_unicode_funcs_t;
+ Thb_unicode_funcs_t = object
+ end;
+ Thb_buffer_message_func_t = function(buffer: Phb_buffer_t; font: Phb_font_t; message: Pgchar; user_data: Pgpointer): Thb_bool_t; cdecl;
+
+
+ { Thb_buffer_serialize_flags_t }
+ PPhb_buffer_serialize_flags_t = ^Phb_buffer_serialize_flags_t;
+ Phb_buffer_serialize_flags_t = ^Thb_buffer_serialize_flags_t;
+
+
+ { Thb_draw_funcs_t }
+ PPhb_draw_funcs_t = ^Phb_draw_funcs_t;
+ Phb_draw_funcs_t = ^Thb_draw_funcs_t;
+ Thb_draw_funcs_t = object
+ end;
+
+
+ { Thb_draw_state_t }
+ PPhb_draw_state_t = ^Phb_draw_state_t;
+ Phb_draw_state_t = ^Thb_draw_state_t;
+
+
+ { Thb_var_num_t }
+ PPhb_var_num_t = ^Phb_var_num_t;
+ Phb_var_num_t = ^Thb_var_num_t;
+ Thb_var_num_t = record
+ case longint of
+ 0 : (f: gfloat);
+ 1 : (u32: guint32);
+ 2 : (i32: gint32);
+ 3 : (u16: array [0..1] of guint16);
+ 4 : (i16: array [0..1] of gint16);
+ 5 : (u8: array [0..3] of guint8);
+ 6 : (i8: array [0..3] of gint8);
+ end;
+
+
+
+ Thb_draw_state_t = record
+ path_open: Thb_bool_t;
+ path_start_x: gfloat;
+ path_start_y: gfloat;
+ current_x: gfloat;
+ current_y: gfloat;
+ reserved1: Thb_var_num_t;
+ reserved2: Thb_var_num_t;
+ reserved3: Thb_var_num_t;
+ reserved4: Thb_var_num_t;
+ reserved5: Thb_var_num_t;
+ reserved6: Thb_var_num_t;
+ reserved7: Thb_var_num_t;
+ end;
+
+
+ Thb_draw_close_path_func_t = procedure(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; user_data: Pgpointer); cdecl;
+ Thb_draw_cubic_to_func_t = procedure(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; control1_x: gfloat; control1_y: gfloat; control2_x: gfloat; control2_y: gfloat; to_x: gfloat; to_y: gfloat; user_data: Pgpointer); cdecl;
+ Thb_draw_line_to_func_t = procedure(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; to_x: gfloat; to_y: gfloat; user_data: Pgpointer); cdecl;
+ Thb_draw_move_to_func_t = procedure(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; to_x: gfloat; to_y: gfloat; user_data: Pgpointer); cdecl;
+ Thb_draw_quadratic_to_func_t = procedure(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; control_x: gfloat; control_y: gfloat; to_x: gfloat; to_y: gfloat; user_data: Pgpointer); cdecl;
+
+
+ { Thb_set_t }
+ PPhb_set_t = ^Phb_set_t;
+ Phb_set_t = ^Thb_set_t;
+ Thb_set_t = object
+ end;
+ Thb_reference_table_func_t = function(face: Phb_face_t; tag: Thb_tag_t; user_data: Pgpointer): Phb_blob_t; cdecl;
+
+
+ { Thb_feature_t }
+ PPPhb_feature_t = ^PPhb_feature_t;
+ PPhb_feature_t = ^Phb_feature_t;
+ Phb_feature_t = ^Thb_feature_t;
+ Thb_feature_t = object
+ tag: Thb_tag_t;
+ value: guint32;
+ start: guint;
+ end_: guint;
+ procedure _string(buf: Pgchar; size: Pguint); cdecl; inline;
+ end;
+
+ Thb_font_extents_t = record
+ ascender: Thb_position_t;
+ descender: Thb_position_t;
+ line_gap: Thb_position_t;
+ reserved9: Thb_position_t;
+ reserved8: Thb_position_t;
+ reserved7: Thb_position_t;
+ reserved6: Thb_position_t;
+ reserved5: Thb_position_t;
+ reserved4: Thb_position_t;
+ reserved3: Thb_position_t;
+ reserved2: Thb_position_t;
+ reserved1: Thb_position_t;
+ end;
+
+
+
+
+ { Thb_font_funcs_t }
+ PPhb_font_funcs_t = ^Phb_font_funcs_t;
+ Phb_font_funcs_t = ^Thb_font_funcs_t;
+ Thb_font_funcs_t = object
+ end;
+ Thb_font_get_glyph_contour_point_func_t = function(font: Phb_font_t; font_data: Pgpointer; glyph: Thb_codepoint_t; point_index: guint; x: Phb_position_t; y: Phb_position_t; user_data: Pgpointer): Thb_bool_t; cdecl;
+
+
+ { Thb_glyph_extents_t }
+ PPhb_glyph_extents_t = ^Phb_glyph_extents_t;
+ Phb_glyph_extents_t = ^Thb_glyph_extents_t;
+ Thb_font_get_glyph_extents_func_t = function(font: Phb_font_t; font_data: Pgpointer; glyph: Thb_codepoint_t; extents: Phb_glyph_extents_t; user_data: Pgpointer): Thb_bool_t; cdecl;
+ Thb_font_get_glyph_from_name_func_t = function(font: Phb_font_t; font_data: Pgpointer; name: Pgchar; len: gint; glyph: Phb_codepoint_t; user_data: Pgpointer): Thb_bool_t; cdecl;
+ Thb_font_get_glyph_name_func_t = function(font: Phb_font_t; font_data: Pgpointer; glyph: Thb_codepoint_t; name: Pgchar; size: Pguint; user_data: Pgpointer): Thb_bool_t; cdecl;
+ Thb_font_get_glyph_shape_func_t = procedure(font: Phb_font_t; font_data: Pgpointer; glyph: Thb_codepoint_t; draw_funcs: Phb_draw_funcs_t; draw_data: Pgpointer; user_data: Pgpointer); cdecl;
+ Thb_font_get_nominal_glyph_func_t = function(font: Phb_font_t; font_data: Pgpointer; unicode: Thb_codepoint_t; glyph: Phb_codepoint_t; user_data: Pgpointer): Thb_bool_t; cdecl;
+ Thb_font_get_nominal_glyphs_func_t = function(font: Phb_font_t; font_data: Pgpointer; count: guint; first_unicode: Phb_codepoint_t; unicode_stride: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint; user_data: Pgpointer): guint; cdecl;
+ Thb_font_get_variation_glyph_func_t = function(font: Phb_font_t; font_data: Pgpointer; unicode: Thb_codepoint_t; variation_selector: Thb_codepoint_t; glyph: Phb_codepoint_t; user_data: Pgpointer): Thb_bool_t; cdecl;
+
+ Thb_glyph_extents_t = record
+ x_bearing: Thb_position_t;
+ y_bearing: Thb_position_t;
+ width: Thb_position_t;
+ height: Thb_position_t;
+ end;
+
+
+
+
+ { Thb_variation_t }
+ PPhb_variation_t = ^Phb_variation_t;
+ Phb_variation_t = ^Thb_variation_t;
+ Thb_variation_t = object
+ tag: Thb_tag_t;
+ value: gfloat;
+ procedure _string(buf: Pgchar; size: Pguint); cdecl; inline;
+ end;
+
+
+ { Thb_glyph_flags_t }
+ PPhb_glyph_flags_t = ^Phb_glyph_flags_t;
+ Phb_glyph_flags_t = ^Thb_glyph_flags_t;
+
+ { gr_face* }
+ Tgr_face = record
+ { opaque type }
+ Unknown: Pointer;
+ end;
+
+
+ { gr_font* }
+ Tgr_font = record
+ { opaque type }
+ Unknown: Pointer;
+ end;
+
+
+
+ { Thb_map_t }
+ PPhb_map_t = ^Phb_map_t;
+ Phb_map_t = ^Thb_map_t;
+ Thb_map_t = object
+ end;
+
+
+ { Thb_ot_color_layer_t }
+ PPPhb_ot_color_layer_t = ^PPhb_ot_color_layer_t;
+ PPhb_ot_color_layer_t = ^Phb_ot_color_layer_t;
+ Phb_ot_color_layer_t = ^Thb_ot_color_layer_t;
+
+ Thb_ot_color_layer_t = record
+ glyph: Thb_codepoint_t;
+ color_index: guint;
+ end;
+
+
+
+
+ { Thb_ot_color_palette_flags_t }
+ PPhb_ot_color_palette_flags_t = ^Phb_ot_color_palette_flags_t;
+ Phb_ot_color_palette_flags_t = ^Thb_ot_color_palette_flags_t;
+
+
+ { Thb_ot_layout_baseline_tag_t }
+ PPhb_ot_layout_baseline_tag_t = ^Phb_ot_layout_baseline_tag_t;
+ Phb_ot_layout_baseline_tag_t = ^Thb_ot_layout_baseline_tag_t;
+
+
+ { Thb_ot_layout_glyph_class_t }
+ PPhb_ot_layout_glyph_class_t = ^Phb_ot_layout_glyph_class_t;
+ Phb_ot_layout_glyph_class_t = ^Thb_ot_layout_glyph_class_t;
+
+
+ { Thb_ot_math_constant_t }
+ PPhb_ot_math_constant_t = ^Phb_ot_math_constant_t;
+ Phb_ot_math_constant_t = ^Thb_ot_math_constant_t;
+
+
+ { Thb_ot_math_glyph_part_t }
+ PPPhb_ot_math_glyph_part_t = ^PPhb_ot_math_glyph_part_t;
+ PPhb_ot_math_glyph_part_t = ^Phb_ot_math_glyph_part_t;
+ Phb_ot_math_glyph_part_t = ^Thb_ot_math_glyph_part_t;
+
+
+ { Thb_ot_math_glyph_part_flags_t }
+ PPhb_ot_math_glyph_part_flags_t = ^Phb_ot_math_glyph_part_flags_t;
+ Phb_ot_math_glyph_part_flags_t = ^Thb_ot_math_glyph_part_flags_t;
+ Thb_ot_math_glyph_part_t = object
+ glyph: Thb_codepoint_t;
+ start_connector_length: Thb_position_t;
+ end_connector_length: Thb_position_t;
+ full_advance: Thb_position_t;
+ flags: Thb_ot_math_glyph_part_flags_t;
+ end;
+
+
+ { Thb_ot_math_kern_t }
+ PPhb_ot_math_kern_t = ^Phb_ot_math_kern_t;
+ Phb_ot_math_kern_t = ^Thb_ot_math_kern_t;
+
+
+ { Thb_ot_math_kern_entry_t }
+ PPPhb_ot_math_kern_entry_t = ^PPhb_ot_math_kern_entry_t;
+ PPhb_ot_math_kern_entry_t = ^Phb_ot_math_kern_entry_t;
+ Phb_ot_math_kern_entry_t = ^Thb_ot_math_kern_entry_t;
+
+ Thb_ot_math_kern_entry_t = record
+ max_correction_height: Thb_position_t;
+ kern_value: Thb_position_t;
+ end;
+
+
+
+
+ { Thb_ot_math_glyph_variant_t }
+ PPPhb_ot_math_glyph_variant_t = ^PPhb_ot_math_glyph_variant_t;
+ PPhb_ot_math_glyph_variant_t = ^Phb_ot_math_glyph_variant_t;
+ Phb_ot_math_glyph_variant_t = ^Thb_ot_math_glyph_variant_t;
+ Thb_ot_math_glyph_variant_t = object
+ glyph: Thb_codepoint_t;
+ advance: Thb_position_t;
+ end;
+
+
+ { Thb_ot_meta_tag_t }
+ PPhb_ot_meta_tag_t = ^Phb_ot_meta_tag_t;
+ Phb_ot_meta_tag_t = ^Thb_ot_meta_tag_t;
+
+
+ { Thb_ot_metrics_tag_t }
+ PPhb_ot_metrics_tag_t = ^Phb_ot_metrics_tag_t;
+ Phb_ot_metrics_tag_t = ^Thb_ot_metrics_tag_t;
+
+
+ { Thb_ot_name_entry_t }
+ PPhb_ot_name_entry_t = ^Phb_ot_name_entry_t;
+ Phb_ot_name_entry_t = ^Thb_ot_name_entry_t;
+
+ Thb_ot_name_entry_t = record
+ name_id: Thb_ot_name_id_t;
+ var_: Thb_var_int_t;
+ language: Thb_language_t;
+ end;
+
+
+
+
+ { Thb_shape_plan_t }
+ PPhb_shape_plan_t = ^Phb_shape_plan_t;
+ Phb_shape_plan_t = ^Thb_shape_plan_t;
+ Thb_shape_plan_t = object
+ end;
+
+
+ { Thb_ot_var_axis_flags_t }
+ PPhb_ot_var_axis_flags_t = ^Phb_ot_var_axis_flags_t;
+ Phb_ot_var_axis_flags_t = ^Thb_ot_var_axis_flags_t;
+
+
+ { Thb_ot_var_axis_info_t }
+ PPhb_ot_var_axis_info_t = ^Phb_ot_var_axis_info_t;
+ Phb_ot_var_axis_info_t = ^Thb_ot_var_axis_info_t;
+
+ Thb_ot_var_axis_info_t = record
+ axis_index: guint;
+ tag: Thb_tag_t;
+ name_id: Thb_ot_name_id_t;
+ flags: Thb_ot_var_axis_flags_t;
+ min_value: gfloat;
+ default_value: gfloat;
+ max_value: gfloat;
+ reserved: guint;
+ end;
+
+
+
+
+ { Thb_ot_var_axis_t }
+ PPhb_ot_var_axis_t = ^Phb_ot_var_axis_t;
+ Phb_ot_var_axis_t = ^Thb_ot_var_axis_t;
+
+ Thb_ot_var_axis_t = record
+ tag: Thb_tag_t;
+ name_id: Thb_ot_name_id_t;
+ min_value: gfloat;
+ default_value: gfloat;
+ max_value: gfloat;
+ end;
+
+
+
+
+ { Thb_style_tag_t }
+ PPhb_style_tag_t = ^Phb_style_tag_t;
+ Phb_style_tag_t = ^Thb_style_tag_t;
+
+
+ { Thb_unicode_combining_class_t }
+ PPhb_unicode_combining_class_t = ^Phb_unicode_combining_class_t;
+ Phb_unicode_combining_class_t = ^Thb_unicode_combining_class_t;
+ Thb_unicode_combining_class_func_t = function(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t; user_data: Pgpointer): Thb_unicode_combining_class_t; cdecl;
+ Thb_unicode_compose_func_t = function(ufuncs: Phb_unicode_funcs_t; a: Thb_codepoint_t; b: Thb_codepoint_t; ab: Phb_codepoint_t; user_data: Pgpointer): Thb_bool_t; cdecl;
+ Thb_unicode_decompose_compatibility_func_t = function(ufuncs: Phb_unicode_funcs_t; u: Thb_codepoint_t; decomposed: Phb_codepoint_t; user_data: Pgpointer): guint; cdecl;
+ Thb_unicode_decompose_func_t = function(ufuncs: Phb_unicode_funcs_t; ab: Thb_codepoint_t; a: Phb_codepoint_t; b: Phb_codepoint_t; user_data: Pgpointer): Thb_bool_t; cdecl;
+ Thb_unicode_eastasian_width_func_t = function(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t; user_data: Pgpointer): guint; cdecl;
+
+
+ { Thb_unicode_general_category_t }
+ PPhb_unicode_general_category_t = ^Phb_unicode_general_category_t;
+ Phb_unicode_general_category_t = ^Thb_unicode_general_category_t;
+ Thb_unicode_general_category_func_t = function(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t; user_data: Pgpointer): Thb_unicode_general_category_t; cdecl;
+ Thb_unicode_mirroring_func_t = function(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t; user_data: Pgpointer): Thb_codepoint_t; cdecl;
+ Thb_unicode_script_func_t = function(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t; user_data: Pgpointer): Thb_script_t; cdecl;
+
+function hb_aat_layout_feature_type_get_name_id(face: Phb_face_t; feature_type: Thb_aat_layout_feature_type_t): Thb_ot_name_id_t; cdecl; external LazHarfBuzz0_library name 'hb_aat_layout_feature_type_get_name_id';
+function hb_aat_layout_feature_type_get_selector_infos(face: Phb_face_t; feature_type: Thb_aat_layout_feature_type_t; start_offset: guint; selector_count: Pguint; selectors: Phb_aat_layout_feature_selector_info_t; default_index: Pguint): guint; cdecl; external LazHarfBuzz0_library name 'hb_aat_layout_feature_type_get_selector_infos';
+function hb_aat_layout_get_feature_types(face: Phb_face_t; start_offset: guint; feature_count: Pguint; features: Phb_aat_layout_feature_type_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_aat_layout_get_feature_types';
+function hb_aat_layout_has_positioning(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_aat_layout_has_positioning';
+function hb_aat_layout_has_substitution(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_aat_layout_has_substitution';
+function hb_aat_layout_has_tracking(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_aat_layout_has_tracking';
+function hb_blob_copy_writable_or_fail(blob: Phb_blob_t): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_blob_copy_writable_or_fail';
+function hb_blob_create(data: Pgchar; length: guint; mode: Thb_memory_mode_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_blob_create';
+function hb_blob_create_from_file(file_name: Pgchar): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_blob_create_from_file';
+function hb_blob_create_from_file_or_fail(file_name: Pgchar): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_blob_create_from_file_or_fail';
+function hb_blob_create_or_fail(data: Pgchar; length: guint; mode: Thb_memory_mode_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_blob_create_or_fail';
+function hb_blob_create_sub_blob(parent: Phb_blob_t; offset: guint; length: guint): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_blob_create_sub_blob';
+function hb_blob_get_data(blob: Phb_blob_t; length: Pguint): Pgchar; cdecl; external LazHarfBuzz0_library name 'hb_blob_get_data';
+function hb_blob_get_data_writable(blob: Phb_blob_t; length: Pguint): Pgchar; cdecl; external LazHarfBuzz0_library name 'hb_blob_get_data_writable';
+function hb_blob_get_empty: Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_blob_get_empty';
+function hb_blob_get_length(blob: Phb_blob_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_blob_get_length';
+function hb_blob_get_user_data(blob: Phb_blob_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external LazHarfBuzz0_library name 'hb_blob_get_user_data';
+function hb_blob_is_immutable(blob: Phb_blob_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_blob_is_immutable';
+function hb_blob_reference(blob: Phb_blob_t): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_blob_reference';
+function hb_blob_set_user_data(blob: Phb_blob_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_blob_set_user_data';
+function hb_buffer_allocation_successful(buffer: Phb_buffer_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_allocation_successful';
+function hb_buffer_create: Phb_buffer_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_create';
+function hb_buffer_create_similar(src: Phb_buffer_t): Phb_buffer_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_create_similar';
+function hb_buffer_deserialize_glyphs(buffer: Phb_buffer_t; buf: Pgchar; buf_len: gint; end_ptr: PPgchar; font: Phb_font_t; format: Thb_buffer_serialize_format_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_deserialize_glyphs';
+function hb_buffer_deserialize_unicode(buffer: Phb_buffer_t; buf: Pgchar; buf_len: gint; end_ptr: PPgchar; format: Thb_buffer_serialize_format_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_deserialize_unicode';
+function hb_buffer_diff(buffer: Phb_buffer_t; reference: Phb_buffer_t; dottedcircle_glyph: Thb_codepoint_t; position_fuzz: guint): Thb_buffer_diff_flags_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_diff';
+function hb_buffer_get_cluster_level(buffer: Phb_buffer_t): Thb_buffer_cluster_level_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_cluster_level';
+function hb_buffer_get_content_type(buffer: Phb_buffer_t): Thb_buffer_content_type_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_content_type';
+function hb_buffer_get_direction(buffer: Phb_buffer_t): Thb_direction_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_direction';
+function hb_buffer_get_empty: Phb_buffer_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_empty';
+function hb_buffer_get_flags(buffer: Phb_buffer_t): Thb_buffer_flags_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_flags';
+function hb_buffer_get_glyph_infos(buffer: Phb_buffer_t; length: Pguint): Phb_glyph_info_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_glyph_infos';
+function hb_buffer_get_glyph_positions(buffer: Phb_buffer_t; length: Pguint): Phb_glyph_position_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_glyph_positions';
+function hb_buffer_get_invisible_glyph(buffer: Phb_buffer_t): Thb_codepoint_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_invisible_glyph';
+function hb_buffer_get_language(buffer: Phb_buffer_t): Thb_language_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_language';
+function hb_buffer_get_length(buffer: Phb_buffer_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_length';
+function hb_buffer_get_not_found_glyph(buffer: Phb_buffer_t): Thb_codepoint_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_not_found_glyph';
+function hb_buffer_get_replacement_codepoint(buffer: Phb_buffer_t): Thb_codepoint_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_replacement_codepoint';
+function hb_buffer_get_script(buffer: Phb_buffer_t): Thb_script_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_script';
+function hb_buffer_get_unicode_funcs(buffer: Phb_buffer_t): Phb_unicode_funcs_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_unicode_funcs';
+function hb_buffer_get_user_data(buffer: Phb_buffer_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_user_data';
+function hb_buffer_has_positions(buffer: Phb_buffer_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_has_positions';
+function hb_buffer_pre_allocate(buffer: Phb_buffer_t; size: guint): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_pre_allocate';
+function hb_buffer_reference(buffer: Phb_buffer_t): Phb_buffer_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_reference';
+function hb_buffer_serialize(buffer: Phb_buffer_t; start: guint; end_: guint; buf: Pgchar; buf_size: Pguint; buf_consumed: Pguint; font: Phb_font_t; format: Thb_buffer_serialize_format_t; flags: Thb_buffer_serialize_flags_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_buffer_serialize';
+function hb_buffer_serialize_format_from_string(str: Pgchar; len: gint): Thb_buffer_serialize_format_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_serialize_format_from_string';
+function hb_buffer_serialize_format_to_string(format: Thb_buffer_serialize_format_t): Pgchar; cdecl; external LazHarfBuzz0_library name 'hb_buffer_serialize_format_to_string';
+function hb_buffer_serialize_glyphs(buffer: Phb_buffer_t; start: guint; end_: guint; buf: Pgchar; buf_size: Pguint; buf_consumed: Pguint; font: Phb_font_t; format: Thb_buffer_serialize_format_t; flags: Thb_buffer_serialize_flags_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_buffer_serialize_glyphs';
+function hb_buffer_serialize_list_formats: PPgchar; cdecl; external LazHarfBuzz0_library name 'hb_buffer_serialize_list_formats';
+function hb_buffer_serialize_unicode(buffer: Phb_buffer_t; start: guint; end_: guint; buf: Pgchar; buf_size: Pguint; buf_consumed: Pguint; format: Thb_buffer_serialize_format_t; flags: Thb_buffer_serialize_flags_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_buffer_serialize_unicode';
+function hb_buffer_set_length(buffer: Phb_buffer_t; length: guint): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_length';
+function hb_buffer_set_user_data(buffer: Phb_buffer_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_user_data';
+function hb_color_get_alpha(color: Thb_color_t): guint8; cdecl; external LazHarfBuzz0_library name 'hb_color_get_alpha';
+function hb_color_get_blue(color: Thb_color_t): guint8; cdecl; external LazHarfBuzz0_library name 'hb_color_get_blue';
+function hb_color_get_green(color: Thb_color_t): guint8; cdecl; external LazHarfBuzz0_library name 'hb_color_get_green';
+function hb_color_get_red(color: Thb_color_t): guint8; cdecl; external LazHarfBuzz0_library name 'hb_color_get_red';
+function hb_direction_from_string(str: Pgchar; len: gint): Thb_direction_t; cdecl; external LazHarfBuzz0_library name 'hb_direction_from_string';
+function hb_direction_to_string(direction: Thb_direction_t): Pgchar; cdecl; external LazHarfBuzz0_library name 'hb_direction_to_string';
+function hb_draw_funcs_create: Phb_draw_funcs_t; cdecl; external LazHarfBuzz0_library name 'hb_draw_funcs_create';
+function hb_draw_funcs_is_immutable(dfuncs: Phb_draw_funcs_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_draw_funcs_is_immutable';
+function hb_draw_funcs_reference(dfuncs: Phb_draw_funcs_t): Phb_draw_funcs_t; cdecl; external LazHarfBuzz0_library name 'hb_draw_funcs_reference';
+function hb_face_builder_add_table(face: Phb_face_t; tag: Thb_tag_t; blob: Phb_blob_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_face_builder_add_table';
+function hb_face_builder_create: Phb_face_t; cdecl; external LazHarfBuzz0_library name 'hb_face_builder_create';
+function hb_face_count(blob: Phb_blob_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_face_count';
+function hb_face_create(blob: Phb_blob_t; index: guint): Phb_face_t; cdecl; external LazHarfBuzz0_library name 'hb_face_create';
+function hb_face_create_for_tables(reference_table_func: Thb_reference_table_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t): Phb_face_t; cdecl; external LazHarfBuzz0_library name 'hb_face_create_for_tables';
+function hb_face_get_empty: Phb_face_t; cdecl; external LazHarfBuzz0_library name 'hb_face_get_empty';
+function hb_face_get_glyph_count(face: Phb_face_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_face_get_glyph_count';
+function hb_face_get_index(face: Phb_face_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_face_get_index';
+function hb_face_get_table_tags(face: Phb_face_t; start_offset: guint; table_count: Pguint; table_tags: Phb_tag_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_face_get_table_tags';
+function hb_face_get_upem(face: Phb_face_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_face_get_upem';
+function hb_face_get_user_data(face: Phb_face_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external LazHarfBuzz0_library name 'hb_face_get_user_data';
+function hb_face_is_immutable(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_face_is_immutable';
+function hb_face_reference(face: Phb_face_t): Phb_face_t; cdecl; external LazHarfBuzz0_library name 'hb_face_reference';
+function hb_face_reference_blob(face: Phb_face_t): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_face_reference_blob';
+function hb_face_reference_table(face: Phb_face_t; tag: Thb_tag_t): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_face_reference_table';
+function hb_face_set_user_data(face: Phb_face_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_face_set_user_data';
+function hb_feature_from_string(str: Pgchar; len: gint; feature: Phb_feature_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_feature_from_string';
+function hb_font_create(face: Phb_face_t): Phb_font_t; cdecl; external LazHarfBuzz0_library name 'hb_font_create';
+function hb_font_create_sub_font(parent: Phb_font_t): Phb_font_t; cdecl; external LazHarfBuzz0_library name 'hb_font_create_sub_font';
+function hb_font_funcs_create: Phb_font_funcs_t; cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_create';
+function hb_font_funcs_get_empty: Phb_font_funcs_t; cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_get_empty';
+function hb_font_funcs_get_user_data(ffuncs: Phb_font_funcs_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_get_user_data';
+function hb_font_funcs_is_immutable(ffuncs: Phb_font_funcs_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_is_immutable';
+function hb_font_funcs_reference(ffuncs: Phb_font_funcs_t): Phb_font_funcs_t; cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_reference';
+function hb_font_funcs_set_user_data(ffuncs: Phb_font_funcs_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_user_data';
+function hb_font_get_empty: Phb_font_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_empty';
+function hb_font_get_face(font: Phb_font_t): Phb_face_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_face';
+function hb_font_get_glyph(font: Phb_font_t; unicode: Thb_codepoint_t; variation_selector: Thb_codepoint_t; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph';
+function hb_font_get_glyph_contour_point(font: Phb_font_t; glyph: Thb_codepoint_t; point_index: guint; x: Phb_position_t; y: Phb_position_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_contour_point';
+function hb_font_get_glyph_contour_point_for_origin(font: Phb_font_t; glyph: Thb_codepoint_t; point_index: guint; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_contour_point_for_origin';
+function hb_font_get_glyph_extents(font: Phb_font_t; glyph: Thb_codepoint_t; extents: Phb_glyph_extents_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_extents';
+function hb_font_get_glyph_extents_for_origin(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; extents: Phb_glyph_extents_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_extents_for_origin';
+function hb_font_get_glyph_from_name(font: Phb_font_t; name: Pgchar; len: gint; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_from_name';
+function hb_font_get_glyph_h_advance(font: Phb_font_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_h_advance';
+function hb_font_get_glyph_h_kerning(font: Phb_font_t; left_glyph: Thb_codepoint_t; right_glyph: Thb_codepoint_t): Thb_position_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_h_kerning';
+function hb_font_get_glyph_h_origin(font: Phb_font_t; glyph: Thb_codepoint_t; x: Phb_position_t; y: Phb_position_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_h_origin';
+function hb_font_get_glyph_name(font: Phb_font_t; glyph: Thb_codepoint_t; name: Pgchar; size: Pguint): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_name';
+function hb_font_get_glyph_v_advance(font: Phb_font_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_v_advance';
+function hb_font_get_glyph_v_origin(font: Phb_font_t; glyph: Thb_codepoint_t; x: Phb_position_t; y: Phb_position_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_v_origin';
+function hb_font_get_h_extents(font: Phb_font_t; extents: Phb_font_extents_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_h_extents';
+function hb_font_get_nominal_glyph(font: Phb_font_t; unicode: Thb_codepoint_t; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_nominal_glyph';
+function hb_font_get_nominal_glyphs(font: Phb_font_t; count: guint; first_unicode: Phb_codepoint_t; unicode_stride: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint): guint; cdecl; external LazHarfBuzz0_library name 'hb_font_get_nominal_glyphs';
+function hb_font_get_parent(font: Phb_font_t): Phb_font_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_parent';
+function hb_font_get_ptem(font: Phb_font_t): gfloat; cdecl; external LazHarfBuzz0_library name 'hb_font_get_ptem';
+function hb_font_get_serial(font: Phb_font_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_font_get_serial';
+function hb_font_get_synthetic_slant(font: Phb_font_t): gfloat; cdecl; external LazHarfBuzz0_library name 'hb_font_get_synthetic_slant';
+function hb_font_get_user_data(font: Phb_font_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external LazHarfBuzz0_library name 'hb_font_get_user_data';
+function hb_font_get_v_extents(font: Phb_font_t; extents: Phb_font_extents_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_v_extents';
+function hb_font_get_var_coords_design(font: Phb_font_t; length: Pguint): Pgfloat; cdecl; external LazHarfBuzz0_library name 'hb_font_get_var_coords_design';
+function hb_font_get_var_coords_normalized(font: Phb_font_t; length: Pguint): Pgint; cdecl; external LazHarfBuzz0_library name 'hb_font_get_var_coords_normalized';
+function hb_font_get_variation_glyph(font: Phb_font_t; unicode: Thb_codepoint_t; variation_selector: Thb_codepoint_t; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_get_variation_glyph';
+function hb_font_glyph_from_string(font: Phb_font_t; s: Pgchar; len: gint; glyph: Phb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_glyph_from_string';
+function hb_font_is_immutable(font: Phb_font_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_is_immutable';
+function hb_font_reference(font: Phb_font_t): Phb_font_t; cdecl; external LazHarfBuzz0_library name 'hb_font_reference';
+function hb_font_set_user_data(font: Phb_font_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_font_set_user_data';
+function hb_ft_face_create(ft_face: TFT_Face; destroy_: Thb_destroy_func_t): Phb_face_t; cdecl; external LazHarfBuzz0_library name 'hb_ft_face_create';
+function hb_ft_face_create_cached(ft_face: TFT_Face): Phb_face_t; cdecl; external LazHarfBuzz0_library name 'hb_ft_face_create_cached';
+function hb_ft_face_create_referenced(ft_face: TFT_Face): Phb_face_t; cdecl; external LazHarfBuzz0_library name 'hb_ft_face_create_referenced';
+function hb_ft_font_create(ft_face: TFT_Face; destroy_: Thb_destroy_func_t): Phb_font_t; cdecl; external LazHarfBuzz0_library name 'hb_ft_font_create';
+function hb_ft_font_create_referenced(ft_face: TFT_Face): Phb_font_t; cdecl; external LazHarfBuzz0_library name 'hb_ft_font_create_referenced';
+function hb_ft_font_get_face(font: Phb_font_t): TFT_Face; cdecl; external LazHarfBuzz0_library name 'hb_ft_font_get_face';
+function hb_ft_font_get_load_flags(font: Phb_font_t): gint; cdecl; external LazHarfBuzz0_library name 'hb_ft_font_get_load_flags';
+function hb_ft_font_lock_face(font: Phb_font_t): TFT_Face; cdecl; external LazHarfBuzz0_library name 'hb_ft_font_lock_face';
+function hb_ft_hb_font_changed(font: Phb_font_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ft_hb_font_changed';
+function hb_glib_blob_create(gbytes: PGBytes): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_glib_blob_create';
+function hb_glib_get_unicode_funcs: Phb_unicode_funcs_t; cdecl; external LazHarfBuzz0_library name 'hb_glib_get_unicode_funcs';
+function hb_glib_script_from_script(script: Thb_script_t): TGUnicodeScript; cdecl; external LazHarfBuzz0_library name 'hb_glib_script_from_script';
+function hb_glib_script_to_script(script: TGUnicodeScript): Thb_script_t; cdecl; external LazHarfBuzz0_library name 'hb_glib_script_to_script';
+function hb_glyph_info_get_glyph_flags(info: Phb_glyph_info_t): Thb_glyph_flags_t; cdecl; external LazHarfBuzz0_library name 'hb_glyph_info_get_glyph_flags';
+function hb_gobject_blob_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_blob_get_type';
+function hb_gobject_buffer_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_buffer_get_type';
+function hb_gobject_draw_funcs_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_draw_funcs_get_type';
+function hb_gobject_face_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_face_get_type';
+function hb_gobject_feature_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_feature_get_type';
+function hb_gobject_font_funcs_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_font_funcs_get_type';
+function hb_gobject_font_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_font_get_type';
+function hb_gobject_glyph_info_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_glyph_info_get_type';
+function hb_gobject_glyph_position_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_glyph_position_get_type';
+function hb_gobject_map_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_map_get_type';
+function hb_gobject_ot_math_glyph_part_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_ot_math_glyph_part_get_type';
+function hb_gobject_ot_math_glyph_variant_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_ot_math_glyph_variant_get_type';
+function hb_gobject_segment_properties_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_segment_properties_get_type';
+function hb_gobject_set_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_set_get_type';
+function hb_gobject_shape_plan_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_shape_plan_get_type';
+function hb_gobject_unicode_funcs_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_unicode_funcs_get_type';
+function hb_gobject_user_data_key_get_type: TGType; cdecl; external LazHarfBuzz0_library name 'hb_gobject_user_data_key_get_type';
+//function hb_graphite2_face_get_gr_face(face: Phb_face_t): Pgr_face; cdecl; external LazHarfBuzz0_library name 'hb_graphite2_face_get_gr_face';
+function hb_language_from_string(str: Pgchar; len: gint): Thb_language_t; cdecl; external LazHarfBuzz0_library name 'hb_language_from_string';
+function hb_language_get_default: Thb_language_t; cdecl; external LazHarfBuzz0_library name 'hb_language_get_default';
+function hb_language_matches(language: Thb_language_t; specific: Thb_language_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_language_matches';
+function hb_language_to_string(language: Thb_language_t): Pgchar; cdecl; external LazHarfBuzz0_library name 'hb_language_to_string';
+function hb_map_allocation_successful(map: Phb_map_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_map_allocation_successful';
+function hb_map_copy(map: Phb_map_t): Phb_map_t; cdecl; external LazHarfBuzz0_library name 'hb_map_copy';
+function hb_map_create: Phb_map_t; cdecl; external LazHarfBuzz0_library name 'hb_map_create';
+function hb_map_get(map: Phb_map_t; key: Thb_codepoint_t): Thb_codepoint_t; cdecl; external LazHarfBuzz0_library name 'hb_map_get';
+function hb_map_get_empty: Phb_map_t; cdecl; external LazHarfBuzz0_library name 'hb_map_get_empty';
+function hb_map_get_population(map: Phb_map_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_map_get_population';
+function hb_map_get_user_data(map: Phb_map_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external LazHarfBuzz0_library name 'hb_map_get_user_data';
+function hb_map_has(map: Phb_map_t; key: Thb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_map_has';
+function hb_map_hash(map: Phb_map_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_map_hash';
+function hb_map_is_empty(map: Phb_map_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_map_is_empty';
+function hb_map_is_equal(map: Phb_map_t; other: Phb_map_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_map_is_equal';
+function hb_map_reference(map: Phb_map_t): Phb_map_t; cdecl; external LazHarfBuzz0_library name 'hb_map_reference';
+function hb_map_set_user_data(map: Phb_map_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_map_set_user_data';
+function hb_ot_color_glyph_get_layers(face: Phb_face_t; glyph: Thb_codepoint_t; start_offset: guint; layer_count: Pguint; layers: Phb_ot_color_layer_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_color_glyph_get_layers';
+function hb_ot_color_glyph_reference_png(font: Phb_font_t; glyph: Thb_codepoint_t): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_color_glyph_reference_png';
+function hb_ot_color_glyph_reference_svg(face: Phb_face_t; glyph: Thb_codepoint_t): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_color_glyph_reference_svg';
+function hb_ot_color_has_layers(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_color_has_layers';
+function hb_ot_color_has_palettes(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_color_has_palettes';
+function hb_ot_color_has_png(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_color_has_png';
+function hb_ot_color_has_svg(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_color_has_svg';
+function hb_ot_color_palette_color_get_name_id(face: Phb_face_t; color_index: guint): Thb_ot_name_id_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_color_palette_color_get_name_id';
+function hb_ot_color_palette_get_colors(face: Phb_face_t; palette_index: guint; start_offset: guint; color_count: Pguint; colors: Phb_color_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_color_palette_get_colors';
+function hb_ot_color_palette_get_count(face: Phb_face_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_color_palette_get_count';
+function hb_ot_color_palette_get_flags(face: Phb_face_t; palette_index: guint): Thb_ot_color_palette_flags_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_color_palette_get_flags';
+function hb_ot_color_palette_get_name_id(face: Phb_face_t; palette_index: guint): Thb_ot_name_id_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_color_palette_get_name_id';
+function hb_ot_layout_feature_get_characters(face: Phb_face_t; table_tag: Thb_tag_t; feature_index: guint; start_offset: guint; char_count: Pguint; characters: Phb_codepoint_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_feature_get_characters';
+function hb_ot_layout_feature_get_lookups(face: Phb_face_t; table_tag: Thb_tag_t; feature_index: guint; start_offset: guint; lookup_count: Pguint; lookup_indexes: Pguint): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_feature_get_lookups';
+function hb_ot_layout_feature_get_name_ids(face: Phb_face_t; table_tag: Thb_tag_t; feature_index: guint; label_id: Phb_ot_name_id_t; tooltip_id: Phb_ot_name_id_t; sample_id: Phb_ot_name_id_t; num_named_parameters: Pguint; first_param_id: Phb_ot_name_id_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_feature_get_name_ids';
+function hb_ot_layout_feature_with_variations_get_lookups(face: Phb_face_t; table_tag: Thb_tag_t; feature_index: guint; variations_index: guint; start_offset: guint; lookup_count: Pguint; lookup_indexes: Pguint): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_feature_with_variations_get_lookups';
+function hb_ot_layout_get_attach_points(face: Phb_face_t; glyph: Thb_codepoint_t; start_offset: guint; point_count: Pguint; point_array: Pguint): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_get_attach_points';
+function hb_ot_layout_get_baseline(font: Phb_font_t; baseline_tag: Thb_ot_layout_baseline_tag_t; direction: Thb_direction_t; script_tag: Thb_tag_t; language_tag: Thb_tag_t; coord: Phb_position_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_get_baseline';
+function hb_ot_layout_get_glyph_class(face: Phb_face_t; glyph: Thb_codepoint_t): Thb_ot_layout_glyph_class_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_get_glyph_class';
+function hb_ot_layout_get_horizontal_baseline_tag_for_script(script: Thb_script_t): Thb_ot_layout_baseline_tag_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_get_horizontal_baseline_tag_for_script';
+function hb_ot_layout_get_ligature_carets(font: Phb_font_t; direction: Thb_direction_t; glyph: Thb_codepoint_t; start_offset: guint; caret_count: Pguint; caret_array: Phb_position_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_get_ligature_carets';
+function hb_ot_layout_get_size_params(face: Phb_face_t; design_size: Pguint; subfamily_id: Pguint; subfamily_name_id: Phb_ot_name_id_t; range_start: Pguint; range_end: Pguint): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_get_size_params';
+function hb_ot_layout_has_glyph_classes(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_has_glyph_classes';
+function hb_ot_layout_has_positioning(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_has_positioning';
+function hb_ot_layout_has_substitution(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_has_substitution';
+function hb_ot_layout_language_find_feature(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; feature_tag: Thb_tag_t; feature_index: Pguint): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_language_find_feature';
+function hb_ot_layout_language_get_feature_indexes(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; start_offset: guint; feature_count: Pguint; feature_indexes: Pguint): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_language_get_feature_indexes';
+function hb_ot_layout_language_get_feature_tags(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; start_offset: guint; feature_count: Pguint; feature_tags: Phb_tag_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_language_get_feature_tags';
+function hb_ot_layout_language_get_required_feature(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; feature_index: Pguint; feature_tag: Phb_tag_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_language_get_required_feature';
+function hb_ot_layout_language_get_required_feature_index(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_index: guint; feature_index: Pguint): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_language_get_required_feature_index';
+function hb_ot_layout_lookup_get_glyph_alternates(face: Phb_face_t; lookup_index: guint; glyph: Thb_codepoint_t; start_offset: guint; alternate_count: Pguint; alternate_glyphs: Phb_codepoint_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_lookup_get_glyph_alternates';
+function hb_ot_layout_lookup_get_optical_bound(font: Phb_font_t; lookup_index: guint; direction: Thb_direction_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_lookup_get_optical_bound';
+function hb_ot_layout_lookup_would_substitute(face: Phb_face_t; lookup_index: guint; glyphs: Phb_codepoint_t; glyphs_length: guint; zero_context: Thb_bool_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_lookup_would_substitute';
+function hb_ot_layout_script_get_language_tags(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; start_offset: guint; language_count: Pguint; language_tags: Phb_tag_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_script_get_language_tags';
+function hb_ot_layout_script_select_language(face: Phb_face_t; table_tag: Thb_tag_t; script_index: guint; language_count: guint; language_tags: Phb_tag_t; language_index: Pguint): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_script_select_language';
+function hb_ot_layout_table_choose_script(face: Phb_face_t; table_tag: Thb_tag_t; script_tags: Phb_tag_t; script_index: Pguint; chosen_script: Phb_tag_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_table_choose_script';
+function hb_ot_layout_table_find_feature_variations(face: Phb_face_t; table_tag: Thb_tag_t; coords: Pgint; num_coords: guint; variations_index: Pguint): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_table_find_feature_variations';
+function hb_ot_layout_table_find_script(face: Phb_face_t; table_tag: Thb_tag_t; script_tag: Thb_tag_t; script_index: Pguint): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_table_find_script';
+function hb_ot_layout_table_get_feature_tags(face: Phb_face_t; table_tag: Thb_tag_t; start_offset: guint; feature_count: Pguint; feature_tags: Phb_tag_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_table_get_feature_tags';
+function hb_ot_layout_table_get_lookup_count(face: Phb_face_t; table_tag: Thb_tag_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_table_get_lookup_count';
+function hb_ot_layout_table_get_script_tags(face: Phb_face_t; table_tag: Thb_tag_t; start_offset: guint; script_count: Pguint; script_tags: Phb_tag_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_table_get_script_tags';
+function hb_ot_layout_table_select_script(face: Phb_face_t; table_tag: Thb_tag_t; script_count: guint; script_tags: Phb_tag_t; script_index: Pguint; chosen_script: Phb_tag_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_table_select_script';
+function hb_ot_math_get_constant(font: Phb_font_t; constant: Thb_ot_math_constant_t): Thb_position_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_math_get_constant';
+function hb_ot_math_get_glyph_assembly(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; start_offset: guint; parts_count: Pguint; parts: Phb_ot_math_glyph_part_t; italics_correction: Phb_position_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_math_get_glyph_assembly';
+function hb_ot_math_get_glyph_italics_correction(font: Phb_font_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_math_get_glyph_italics_correction';
+function hb_ot_math_get_glyph_kerning(font: Phb_font_t; glyph: Thb_codepoint_t; kern: Thb_ot_math_kern_t; correction_height: Thb_position_t): Thb_position_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_math_get_glyph_kerning';
+function hb_ot_math_get_glyph_kernings(font: Phb_font_t; glyph: Thb_codepoint_t; kern: Thb_ot_math_kern_t; start_offset: guint; entries_count: Pguint; kern_entries: Phb_ot_math_kern_entry_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_math_get_glyph_kernings';
+function hb_ot_math_get_glyph_top_accent_attachment(font: Phb_font_t; glyph: Thb_codepoint_t): Thb_position_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_math_get_glyph_top_accent_attachment';
+function hb_ot_math_get_glyph_variants(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; start_offset: guint; variants_count: Pguint; variants: Phb_ot_math_glyph_variant_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_math_get_glyph_variants';
+function hb_ot_math_get_min_connector_overlap(font: Phb_font_t; direction: Thb_direction_t): Thb_position_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_math_get_min_connector_overlap';
+function hb_ot_math_has_data(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_math_has_data';
+function hb_ot_math_is_glyph_extended_shape(face: Phb_face_t; glyph: Thb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_math_is_glyph_extended_shape';
+function hb_ot_meta_get_entry_tags(face: Phb_face_t; start_offset: guint; entries_count: Pguint; entries: Phb_ot_meta_tag_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_meta_get_entry_tags';
+function hb_ot_meta_reference_entry(face: Phb_face_t; meta_tag: Thb_ot_meta_tag_t): Phb_blob_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_meta_reference_entry';
+function hb_ot_metrics_get_position(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t; position: Phb_position_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_metrics_get_position';
+function hb_ot_metrics_get_variation(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t): gfloat; cdecl; external LazHarfBuzz0_library name 'hb_ot_metrics_get_variation';
+function hb_ot_metrics_get_x_variation(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t): Thb_position_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_metrics_get_x_variation';
+function hb_ot_metrics_get_y_variation(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t): Thb_position_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_metrics_get_y_variation';
+function hb_ot_name_get_utf16(face: Phb_face_t; name_id: Thb_ot_name_id_t; language: Thb_language_t; text_size: Pguint; text: Pguint16): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_name_get_utf16';
+function hb_ot_name_get_utf32(face: Phb_face_t; name_id: Thb_ot_name_id_t; language: Thb_language_t; text_size: Pguint; text: Pguint32): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_name_get_utf32';
+function hb_ot_name_get_utf8(face: Phb_face_t; name_id: Thb_ot_name_id_t; language: Thb_language_t; text_size: Pguint; text: Pgchar): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_name_get_utf8';
+function hb_ot_name_list_names(face: Phb_face_t; num_entries: Pguint): Phb_ot_name_entry_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_name_list_names';
+function hb_ot_tag_from_language(language: Thb_language_t): Thb_tag_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_tag_from_language';
+function hb_ot_tag_to_language(tag: Thb_tag_t): Thb_language_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_tag_to_language';
+function hb_ot_tag_to_script(tag: Thb_tag_t): Thb_script_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_tag_to_script';
+function hb_ot_var_find_axis_info(face: Phb_face_t; axis_tag: Thb_tag_t; axis_info: Phb_ot_var_axis_info_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_var_find_axis_info';
+function hb_ot_var_get_axis_count(face: Phb_face_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_var_get_axis_count';
+function hb_ot_var_get_axis_infos(face: Phb_face_t; start_offset: guint; axes_count: Pguint; axes_array: Phb_ot_var_axis_info_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_var_get_axis_infos';
+function hb_ot_var_get_named_instance_count(face: Phb_face_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_var_get_named_instance_count';
+function hb_ot_var_has_data(face: Phb_face_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_var_has_data';
+function hb_ot_var_named_instance_get_design_coords(face: Phb_face_t; instance_index: guint; coords_length: Pguint; coords: Pgfloat): guint; cdecl; external LazHarfBuzz0_library name 'hb_ot_var_named_instance_get_design_coords';
+function hb_ot_var_named_instance_get_postscript_name_id(face: Phb_face_t; instance_index: guint): Thb_ot_name_id_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_var_named_instance_get_postscript_name_id';
+function hb_ot_var_named_instance_get_subfamily_name_id(face: Phb_face_t; instance_index: guint): Thb_ot_name_id_t; cdecl; external LazHarfBuzz0_library name 'hb_ot_var_named_instance_get_subfamily_name_id';
+function hb_script_from_iso15924_tag(tag: Thb_tag_t): Thb_script_t; cdecl; external LazHarfBuzz0_library name 'hb_script_from_iso15924_tag';
+function hb_script_from_string(str: Pgchar; len: gint): Thb_script_t; cdecl; external LazHarfBuzz0_library name 'hb_script_from_string';
+function hb_script_get_horizontal_direction(script: Thb_script_t): Thb_direction_t; cdecl; external LazHarfBuzz0_library name 'hb_script_get_horizontal_direction';
+function hb_script_to_iso15924_tag(script: Thb_script_t): Thb_tag_t; cdecl; external LazHarfBuzz0_library name 'hb_script_to_iso15924_tag';
+function hb_segment_properties_equal(a: Phb_segment_properties_t; b: Phb_segment_properties_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_segment_properties_equal';
+function hb_segment_properties_hash(p: Phb_segment_properties_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_segment_properties_hash';
+function hb_set_allocation_successful(set_: Phb_set_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_set_allocation_successful';
+function hb_set_copy(set_: Phb_set_t): Phb_set_t; cdecl; external LazHarfBuzz0_library name 'hb_set_copy';
+function hb_set_create: Phb_set_t; cdecl; external LazHarfBuzz0_library name 'hb_set_create';
+function hb_set_get_empty: Phb_set_t; cdecl; external LazHarfBuzz0_library name 'hb_set_get_empty';
+function hb_set_get_max(set_: Phb_set_t): Thb_codepoint_t; cdecl; external LazHarfBuzz0_library name 'hb_set_get_max';
+function hb_set_get_min(set_: Phb_set_t): Thb_codepoint_t; cdecl; external LazHarfBuzz0_library name 'hb_set_get_min';
+function hb_set_get_population(set_: Phb_set_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_set_get_population';
+function hb_set_get_user_data(set_: Phb_set_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external LazHarfBuzz0_library name 'hb_set_get_user_data';
+function hb_set_has(set_: Phb_set_t; codepoint: Thb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_set_has';
+function hb_set_hash(set_: Phb_set_t): guint; cdecl; external LazHarfBuzz0_library name 'hb_set_hash';
+function hb_set_is_empty(set_: Phb_set_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_set_is_empty';
+function hb_set_is_equal(set_: Phb_set_t; other: Phb_set_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_set_is_equal';
+function hb_set_is_subset(set_: Phb_set_t; larger_set: Phb_set_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_set_is_subset';
+function hb_set_next(set_: Phb_set_t; codepoint: Phb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_set_next';
+function hb_set_next_many(set_: Phb_set_t; codepoint: Thb_codepoint_t; out_: Phb_codepoint_t; size: guint): guint; cdecl; external LazHarfBuzz0_library name 'hb_set_next_many';
+function hb_set_next_range(set_: Phb_set_t; first: Phb_codepoint_t; last: Phb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_set_next_range';
+function hb_set_previous(set_: Phb_set_t; codepoint: Phb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_set_previous';
+function hb_set_previous_range(set_: Phb_set_t; first: Phb_codepoint_t; last: Phb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_set_previous_range';
+function hb_set_reference(set_: Phb_set_t): Phb_set_t; cdecl; external LazHarfBuzz0_library name 'hb_set_reference';
+function hb_set_set_user_data(set_: Phb_set_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_set_set_user_data';
+function hb_shape_full(font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint; shaper_list: PPgchar): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_shape_full';
+function hb_shape_list_shapers: PPgchar; cdecl; external LazHarfBuzz0_library name 'hb_shape_list_shapers';
+function hb_shape_plan_create(face: Phb_face_t; props: Phb_segment_properties_t; user_features: Phb_feature_t; num_user_features: guint; shaper_list: PPgchar): Phb_shape_plan_t; cdecl; external LazHarfBuzz0_library name 'hb_shape_plan_create';
+function hb_shape_plan_create2(face: Phb_face_t; props: Phb_segment_properties_t; user_features: Phb_feature_t; num_user_features: guint; coords: Pgint; num_coords: guint; shaper_list: PPgchar): Phb_shape_plan_t; cdecl; external LazHarfBuzz0_library name 'hb_shape_plan_create2';
+function hb_shape_plan_create_cached(face: Phb_face_t; props: Phb_segment_properties_t; user_features: Phb_feature_t; num_user_features: guint; shaper_list: PPgchar): Phb_shape_plan_t; cdecl; external LazHarfBuzz0_library name 'hb_shape_plan_create_cached';
+function hb_shape_plan_create_cached2(face: Phb_face_t; props: Phb_segment_properties_t; user_features: Phb_feature_t; num_user_features: guint; coords: Pgint; num_coords: guint; shaper_list: PPgchar): Phb_shape_plan_t; cdecl; external LazHarfBuzz0_library name 'hb_shape_plan_create_cached2';
+function hb_shape_plan_execute(shape_plan: Phb_shape_plan_t; font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_shape_plan_execute';
+function hb_shape_plan_get_empty: Phb_shape_plan_t; cdecl; external LazHarfBuzz0_library name 'hb_shape_plan_get_empty';
+function hb_shape_plan_get_shaper(shape_plan: Phb_shape_plan_t): Pgchar; cdecl; external LazHarfBuzz0_library name 'hb_shape_plan_get_shaper';
+function hb_shape_plan_get_user_data(shape_plan: Phb_shape_plan_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external LazHarfBuzz0_library name 'hb_shape_plan_get_user_data';
+function hb_shape_plan_reference(shape_plan: Phb_shape_plan_t): Phb_shape_plan_t; cdecl; external LazHarfBuzz0_library name 'hb_shape_plan_reference';
+function hb_shape_plan_set_user_data(shape_plan: Phb_shape_plan_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_shape_plan_set_user_data';
+function hb_style_get_value(font: Phb_font_t; style_tag: Thb_style_tag_t): gfloat; cdecl; external LazHarfBuzz0_library name 'hb_style_get_value';
+function hb_tag_from_string(str: Pgchar; len: gint): Thb_tag_t; cdecl; external LazHarfBuzz0_library name 'hb_tag_from_string';
+function hb_unicode_combining_class(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t): Thb_unicode_combining_class_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_combining_class';
+function hb_unicode_compose(ufuncs: Phb_unicode_funcs_t; a: Thb_codepoint_t; b: Thb_codepoint_t; ab: Phb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_compose';
+function hb_unicode_decompose(ufuncs: Phb_unicode_funcs_t; ab: Thb_codepoint_t; a: Phb_codepoint_t; b: Phb_codepoint_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_decompose';
+function hb_unicode_funcs_create(parent: Phb_unicode_funcs_t): Phb_unicode_funcs_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_create';
+function hb_unicode_funcs_get_default: Phb_unicode_funcs_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_get_default';
+function hb_unicode_funcs_get_empty: Phb_unicode_funcs_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_get_empty';
+function hb_unicode_funcs_get_parent(ufuncs: Phb_unicode_funcs_t): Phb_unicode_funcs_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_get_parent';
+function hb_unicode_funcs_get_user_data(ufuncs: Phb_unicode_funcs_t; key: Phb_user_data_key_t): Pgpointer; cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_get_user_data';
+function hb_unicode_funcs_is_immutable(ufuncs: Phb_unicode_funcs_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_is_immutable';
+function hb_unicode_funcs_reference(ufuncs: Phb_unicode_funcs_t): Phb_unicode_funcs_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_reference';
+function hb_unicode_funcs_set_user_data(ufuncs: Phb_unicode_funcs_t; key: Phb_user_data_key_t; data: Pgpointer; destroy_: Thb_destroy_func_t; replace: Thb_bool_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_set_user_data';
+function hb_unicode_general_category(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t): Thb_unicode_general_category_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_general_category';
+function hb_unicode_mirroring(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t): Thb_codepoint_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_mirroring';
+function hb_unicode_script(ufuncs: Phb_unicode_funcs_t; unicode: Thb_codepoint_t): Thb_script_t; cdecl; external LazHarfBuzz0_library name 'hb_unicode_script';
+function hb_variation_from_string(str: Pgchar; len: gint; variation: Phb_variation_t): Thb_bool_t; cdecl; external LazHarfBuzz0_library name 'hb_variation_from_string';
+procedure hb_blob_destroy(blob: Phb_blob_t); cdecl; external LazHarfBuzz0_library name 'hb_blob_destroy';
+procedure hb_blob_make_immutable(blob: Phb_blob_t); cdecl; external LazHarfBuzz0_library name 'hb_blob_make_immutable';
+procedure hb_buffer_add(buffer: Phb_buffer_t; codepoint: Thb_codepoint_t; cluster: guint); cdecl; external LazHarfBuzz0_library name 'hb_buffer_add';
+procedure hb_buffer_add_codepoints(buffer: Phb_buffer_t; text: Phb_codepoint_t; text_length: gint; item_offset: guint; item_length: gint); cdecl; external LazHarfBuzz0_library name 'hb_buffer_add_codepoints';
+procedure hb_buffer_add_latin1(buffer: Phb_buffer_t; text: Pguint8; text_length: gint; item_offset: guint; item_length: gint); cdecl; external LazHarfBuzz0_library name 'hb_buffer_add_latin1';
+procedure hb_buffer_add_utf16(buffer: Phb_buffer_t; text: Pguint16; text_length: gint; item_offset: guint; item_length: gint); cdecl; external LazHarfBuzz0_library name 'hb_buffer_add_utf16';
+procedure hb_buffer_add_utf32(buffer: Phb_buffer_t; text: Pguint32; text_length: gint; item_offset: guint; item_length: gint); cdecl; external LazHarfBuzz0_library name 'hb_buffer_add_utf32';
+procedure hb_buffer_add_utf8(buffer: Phb_buffer_t; text: Pgchar; text_length: gint; item_offset: guint; item_length: gint); cdecl; external LazHarfBuzz0_library name 'hb_buffer_add_utf8';
+procedure hb_buffer_append(buffer: Phb_buffer_t; source: Phb_buffer_t; start: guint; end_: guint); cdecl; external LazHarfBuzz0_library name 'hb_buffer_append';
+procedure hb_buffer_clear_contents(buffer: Phb_buffer_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_clear_contents';
+procedure hb_buffer_destroy(buffer: Phb_buffer_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_destroy';
+procedure hb_buffer_get_segment_properties(buffer: Phb_buffer_t; props: Phb_segment_properties_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_get_segment_properties';
+procedure hb_buffer_guess_segment_properties(buffer: Phb_buffer_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_guess_segment_properties';
+procedure hb_buffer_normalize_glyphs(buffer: Phb_buffer_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_normalize_glyphs';
+procedure hb_buffer_reset(buffer: Phb_buffer_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_reset';
+procedure hb_buffer_reverse(buffer: Phb_buffer_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_reverse';
+procedure hb_buffer_reverse_clusters(buffer: Phb_buffer_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_reverse_clusters';
+procedure hb_buffer_reverse_range(buffer: Phb_buffer_t; start: guint; end_: guint); cdecl; external LazHarfBuzz0_library name 'hb_buffer_reverse_range';
+procedure hb_buffer_set_cluster_level(buffer: Phb_buffer_t; cluster_level: Thb_buffer_cluster_level_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_cluster_level';
+procedure hb_buffer_set_content_type(buffer: Phb_buffer_t; content_type: Thb_buffer_content_type_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_content_type';
+procedure hb_buffer_set_direction(buffer: Phb_buffer_t; direction: Thb_direction_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_direction';
+procedure hb_buffer_set_flags(buffer: Phb_buffer_t; flags: Thb_buffer_flags_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_flags';
+procedure hb_buffer_set_invisible_glyph(buffer: Phb_buffer_t; invisible: Thb_codepoint_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_invisible_glyph';
+procedure hb_buffer_set_language(buffer: Phb_buffer_t; language: Thb_language_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_language';
+procedure hb_buffer_set_message_func(buffer: Phb_buffer_t; func: Thb_buffer_message_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_message_func';
+procedure hb_buffer_set_not_found_glyph(buffer: Phb_buffer_t; not_found: Thb_codepoint_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_not_found_glyph';
+procedure hb_buffer_set_replacement_codepoint(buffer: Phb_buffer_t; replacement: Thb_codepoint_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_replacement_codepoint';
+procedure hb_buffer_set_script(buffer: Phb_buffer_t; script: Thb_script_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_script';
+procedure hb_buffer_set_segment_properties(buffer: Phb_buffer_t; props: Phb_segment_properties_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_segment_properties';
+procedure hb_buffer_set_unicode_funcs(buffer: Phb_buffer_t; unicode_funcs: Phb_unicode_funcs_t); cdecl; external LazHarfBuzz0_library name 'hb_buffer_set_unicode_funcs';
+procedure hb_draw_close_path(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t); cdecl; external LazHarfBuzz0_library name 'hb_draw_close_path';
+procedure hb_draw_cubic_to(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; control1_x: gfloat; control1_y: gfloat; control2_x: gfloat; control2_y: gfloat; to_x: gfloat; to_y: gfloat); cdecl; external LazHarfBuzz0_library name 'hb_draw_cubic_to';
+procedure hb_draw_funcs_destroy(dfuncs: Phb_draw_funcs_t); cdecl; external LazHarfBuzz0_library name 'hb_draw_funcs_destroy';
+procedure hb_draw_funcs_make_immutable(dfuncs: Phb_draw_funcs_t); cdecl; external LazHarfBuzz0_library name 'hb_draw_funcs_make_immutable';
+procedure hb_draw_funcs_set_close_path_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_close_path_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_draw_funcs_set_close_path_func';
+procedure hb_draw_funcs_set_cubic_to_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_cubic_to_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_draw_funcs_set_cubic_to_func';
+procedure hb_draw_funcs_set_line_to_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_line_to_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_draw_funcs_set_line_to_func';
+procedure hb_draw_funcs_set_move_to_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_move_to_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_draw_funcs_set_move_to_func';
+procedure hb_draw_funcs_set_quadratic_to_func(dfuncs: Phb_draw_funcs_t; func: Thb_draw_quadratic_to_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_draw_funcs_set_quadratic_to_func';
+procedure hb_draw_line_to(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; to_x: gfloat; to_y: gfloat); cdecl; external LazHarfBuzz0_library name 'hb_draw_line_to';
+procedure hb_draw_move_to(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; to_x: gfloat; to_y: gfloat); cdecl; external LazHarfBuzz0_library name 'hb_draw_move_to';
+procedure hb_draw_quadratic_to(dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer; st: Phb_draw_state_t; control_x: gfloat; control_y: gfloat; to_x: gfloat; to_y: gfloat); cdecl; external LazHarfBuzz0_library name 'hb_draw_quadratic_to';
+procedure hb_face_builder_sort_tables(face: Phb_face_t; tags: Phb_tag_t); cdecl; external LazHarfBuzz0_library name 'hb_face_builder_sort_tables';
+procedure hb_face_collect_unicodes(face: Phb_face_t; out_: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_face_collect_unicodes';
+procedure hb_face_collect_variation_selectors(face: Phb_face_t; out_: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_face_collect_variation_selectors';
+procedure hb_face_collect_variation_unicodes(face: Phb_face_t; variation_selector: Thb_codepoint_t; out_: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_face_collect_variation_unicodes';
+procedure hb_face_destroy(face: Phb_face_t); cdecl; external LazHarfBuzz0_library name 'hb_face_destroy';
+procedure hb_face_make_immutable(face: Phb_face_t); cdecl; external LazHarfBuzz0_library name 'hb_face_make_immutable';
+procedure hb_face_set_glyph_count(face: Phb_face_t; glyph_count: guint); cdecl; external LazHarfBuzz0_library name 'hb_face_set_glyph_count';
+procedure hb_face_set_index(face: Phb_face_t; index: guint); cdecl; external LazHarfBuzz0_library name 'hb_face_set_index';
+procedure hb_face_set_upem(face: Phb_face_t; upem: guint); cdecl; external LazHarfBuzz0_library name 'hb_face_set_upem';
+procedure hb_feature_to_string(feature: Phb_feature_t; buf: Pgchar; size: Pguint); cdecl; external LazHarfBuzz0_library name 'hb_feature_to_string';
+procedure hb_font_add_glyph_origin_for_direction(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external LazHarfBuzz0_library name 'hb_font_add_glyph_origin_for_direction';
+procedure hb_font_changed(font: Phb_font_t); cdecl; external LazHarfBuzz0_library name 'hb_font_changed';
+procedure hb_font_destroy(font: Phb_font_t); cdecl; external LazHarfBuzz0_library name 'hb_font_destroy';
+procedure hb_font_funcs_destroy(ffuncs: Phb_font_funcs_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_destroy';
+procedure hb_font_funcs_make_immutable(ffuncs: Phb_font_funcs_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_make_immutable';
+procedure hb_font_funcs_set_font_h_extents_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_font_h_extents_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_font_h_extents_func';
+procedure hb_font_funcs_set_font_v_extents_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_font_v_extents_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_font_v_extents_func';
+procedure hb_font_funcs_set_glyph_contour_point_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_contour_point_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_contour_point_func';
+procedure hb_font_funcs_set_glyph_extents_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_extents_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_extents_func';
+procedure hb_font_funcs_set_glyph_from_name_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_from_name_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_from_name_func';
+procedure hb_font_funcs_set_glyph_h_advance_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_h_advance_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_h_advance_func';
+procedure hb_font_funcs_set_glyph_h_advances_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_h_advances_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_h_advances_func';
+procedure hb_font_funcs_set_glyph_h_kerning_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_h_kerning_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_h_kerning_func';
+procedure hb_font_funcs_set_glyph_h_origin_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_h_origin_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_h_origin_func';
+procedure hb_font_funcs_set_glyph_name_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_name_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_name_func';
+procedure hb_font_funcs_set_glyph_shape_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_shape_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_shape_func';
+procedure hb_font_funcs_set_glyph_v_advance_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_v_advance_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_v_advance_func';
+procedure hb_font_funcs_set_glyph_v_advances_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_v_advances_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_v_advances_func';
+procedure hb_font_funcs_set_glyph_v_origin_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_glyph_v_origin_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_glyph_v_origin_func';
+procedure hb_font_funcs_set_nominal_glyph_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_nominal_glyph_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_nominal_glyph_func';
+procedure hb_font_funcs_set_nominal_glyphs_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_nominal_glyphs_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_nominal_glyphs_func';
+procedure hb_font_funcs_set_variation_glyph_func(ffuncs: Phb_font_funcs_t; func: Thb_font_get_variation_glyph_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_funcs_set_variation_glyph_func';
+procedure hb_font_get_extents_for_direction(font: Phb_font_t; direction: Thb_direction_t; extents: Phb_font_extents_t); cdecl; external LazHarfBuzz0_library name 'hb_font_get_extents_for_direction';
+procedure hb_font_get_glyph_advance_for_direction(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_advance_for_direction';
+procedure hb_font_get_glyph_advances_for_direction(font: Phb_font_t; direction: Thb_direction_t; count: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint; first_advance: Phb_position_t; advance_stride: Pguint); cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_advances_for_direction';
+procedure hb_font_get_glyph_h_advances(font: Phb_font_t; count: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint; first_advance: Phb_position_t; advance_stride: guint); cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_h_advances';
+procedure hb_font_get_glyph_kerning_for_direction(font: Phb_font_t; first_glyph: Thb_codepoint_t; second_glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_kerning_for_direction';
+procedure hb_font_get_glyph_origin_for_direction(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_origin_for_direction';
+procedure hb_font_get_glyph_shape(font: Phb_font_t; glyph: Thb_codepoint_t; dfuncs: Phb_draw_funcs_t; draw_data: Pgpointer); cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_shape';
+procedure hb_font_get_glyph_v_advances(font: Phb_font_t; count: guint; first_glyph: Phb_codepoint_t; glyph_stride: guint; first_advance: Phb_position_t; advance_stride: Pguint); cdecl; external LazHarfBuzz0_library name 'hb_font_get_glyph_v_advances';
+procedure hb_font_get_ppem(font: Phb_font_t; x_ppem: Pguint; y_ppem: Pguint); cdecl; external LazHarfBuzz0_library name 'hb_font_get_ppem';
+procedure hb_font_get_scale(font: Phb_font_t; x_scale: Pgint; y_scale: Pgint); cdecl; external LazHarfBuzz0_library name 'hb_font_get_scale';
+procedure hb_font_glyph_to_string(font: Phb_font_t; glyph: Thb_codepoint_t; s: Pgchar; size: Pguint); cdecl; external LazHarfBuzz0_library name 'hb_font_glyph_to_string';
+procedure hb_font_make_immutable(font: Phb_font_t); cdecl; external LazHarfBuzz0_library name 'hb_font_make_immutable';
+procedure hb_font_set_face(font: Phb_font_t; face: Phb_face_t); cdecl; external LazHarfBuzz0_library name 'hb_font_set_face';
+procedure hb_font_set_funcs(font: Phb_font_t; klass: Phb_font_funcs_t; font_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_set_funcs';
+procedure hb_font_set_funcs_data(font: Phb_font_t; font_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_font_set_funcs_data';
+procedure hb_font_set_parent(font: Phb_font_t; parent: Phb_font_t); cdecl; external LazHarfBuzz0_library name 'hb_font_set_parent';
+procedure hb_font_set_ppem(font: Phb_font_t; x_ppem: guint; y_ppem: guint); cdecl; external LazHarfBuzz0_library name 'hb_font_set_ppem';
+procedure hb_font_set_ptem(font: Phb_font_t; ptem: gfloat); cdecl; external LazHarfBuzz0_library name 'hb_font_set_ptem';
+procedure hb_font_set_scale(font: Phb_font_t; x_scale: gint; y_scale: gint); cdecl; external LazHarfBuzz0_library name 'hb_font_set_scale';
+procedure hb_font_set_synthetic_slant(font: Phb_font_t; slant: gfloat); cdecl; external LazHarfBuzz0_library name 'hb_font_set_synthetic_slant';
+procedure hb_font_set_var_coords_design(font: Phb_font_t; coords: Pgfloat; coords_length: guint); cdecl; external LazHarfBuzz0_library name 'hb_font_set_var_coords_design';
+procedure hb_font_set_var_coords_normalized(font: Phb_font_t; coords: Pgint; coords_length: guint); cdecl; external LazHarfBuzz0_library name 'hb_font_set_var_coords_normalized';
+procedure hb_font_set_var_named_instance(font: Phb_font_t; instance_index: guint); cdecl; external LazHarfBuzz0_library name 'hb_font_set_var_named_instance';
+procedure hb_font_set_variations(font: Phb_font_t; variations: Phb_variation_t; variations_length: guint); cdecl; external LazHarfBuzz0_library name 'hb_font_set_variations';
+procedure hb_font_subtract_glyph_origin_for_direction(font: Phb_font_t; glyph: Thb_codepoint_t; direction: Thb_direction_t; x: Phb_position_t; y: Phb_position_t); cdecl; external LazHarfBuzz0_library name 'hb_font_subtract_glyph_origin_for_direction';
+procedure hb_ft_font_changed(font: Phb_font_t); cdecl; external LazHarfBuzz0_library name 'hb_ft_font_changed';
+procedure hb_ft_font_set_funcs(font: Phb_font_t); cdecl; external LazHarfBuzz0_library name 'hb_ft_font_set_funcs';
+procedure hb_ft_font_set_load_flags(font: Phb_font_t; load_flags: gint); cdecl; external LazHarfBuzz0_library name 'hb_ft_font_set_load_flags';
+procedure hb_ft_font_unlock_face(font: Phb_font_t); cdecl; external LazHarfBuzz0_library name 'hb_ft_font_unlock_face';
+procedure hb_map_clear(map: Phb_map_t); cdecl; external LazHarfBuzz0_library name 'hb_map_clear';
+procedure hb_map_del(map: Phb_map_t; key: Thb_codepoint_t); cdecl; external LazHarfBuzz0_library name 'hb_map_del';
+procedure hb_map_destroy(map: Phb_map_t); cdecl; external LazHarfBuzz0_library name 'hb_map_destroy';
+procedure hb_map_set(map: Phb_map_t; key: Thb_codepoint_t; value: Thb_codepoint_t); cdecl; external LazHarfBuzz0_library name 'hb_map_set';
+procedure hb_ot_font_set_funcs(font: Phb_font_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_font_set_funcs';
+procedure hb_ot_layout_collect_features(face: Phb_face_t; table_tag: Thb_tag_t; scripts: Phb_tag_t; languages: Phb_tag_t; features: Phb_tag_t; feature_indexes: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_collect_features';
+procedure hb_ot_layout_collect_lookups(face: Phb_face_t; table_tag: Thb_tag_t; scripts: Phb_tag_t; languages: Phb_tag_t; features: Phb_tag_t; lookup_indexes: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_collect_lookups';
+procedure hb_ot_layout_get_baseline_with_fallback(font: Phb_font_t; baseline_tag: Thb_ot_layout_baseline_tag_t; direction: Thb_direction_t; script_tag: Thb_tag_t; language_tag: Thb_tag_t; coord: Phb_position_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_get_baseline_with_fallback';
+procedure hb_ot_layout_get_glyphs_in_class(face: Phb_face_t; klass: Thb_ot_layout_glyph_class_t; glyphs: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_get_glyphs_in_class';
+procedure hb_ot_layout_lookup_collect_glyphs(face: Phb_face_t; table_tag: Thb_tag_t; lookup_index: guint; glyphs_before: Phb_set_t; glyphs_input: Phb_set_t; glyphs_after: Phb_set_t; glyphs_output: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_lookup_collect_glyphs';
+procedure hb_ot_layout_lookup_substitute_closure(face: Phb_face_t; lookup_index: guint; glyphs: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_lookup_substitute_closure';
+procedure hb_ot_layout_lookups_substitute_closure(face: Phb_face_t; lookups: Phb_set_t; glyphs: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_layout_lookups_substitute_closure';
+procedure hb_ot_metrics_get_position_with_fallback(font: Phb_font_t; metrics_tag: Thb_ot_metrics_tag_t; position: Phb_position_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_metrics_get_position_with_fallback';
+procedure hb_ot_shape_glyphs_closure(font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint; glyphs: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_shape_glyphs_closure';
+procedure hb_ot_shape_plan_collect_lookups(shape_plan: Phb_shape_plan_t; table_tag: Thb_tag_t; lookup_indexes: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_shape_plan_collect_lookups';
+procedure hb_ot_tags_from_script(script: Thb_script_t; script_tag_1: Phb_tag_t; script_tag_2: Phb_tag_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_tags_from_script';
+procedure hb_ot_tags_from_script_and_language(script: Thb_script_t; language: Thb_language_t; script_count: Pguint; script_tags: Phb_tag_t; language_count: Pguint; language_tags: Phb_tag_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_tags_from_script_and_language';
+procedure hb_ot_tags_to_script_and_language(script_tag: Thb_tag_t; language_tag: Thb_tag_t; script: Phb_script_t; language: Phb_language_t); cdecl; external LazHarfBuzz0_library name 'hb_ot_tags_to_script_and_language';
+procedure hb_ot_var_normalize_coords(face: Phb_face_t; coords_length: guint; design_coords: Pgfloat; normalized_coords: Pgint); cdecl; external LazHarfBuzz0_library name 'hb_ot_var_normalize_coords';
+procedure hb_ot_var_normalize_variations(face: Phb_face_t; variations: Phb_variation_t; variations_length: guint; coords: Pgint; coords_length: Pguint); cdecl; external LazHarfBuzz0_library name 'hb_ot_var_normalize_variations';
+procedure hb_segment_properties_overlay(p: Phb_segment_properties_t; src: Phb_segment_properties_t); cdecl; external LazHarfBuzz0_library name 'hb_segment_properties_overlay';
+procedure hb_set_add(set_: Phb_set_t; codepoint: Thb_codepoint_t); cdecl; external LazHarfBuzz0_library name 'hb_set_add';
+procedure hb_set_add_range(set_: Phb_set_t; first: Thb_codepoint_t; last: Thb_codepoint_t); cdecl; external LazHarfBuzz0_library name 'hb_set_add_range';
+procedure hb_set_add_sorted_array(set_: Phb_set_t; sorted_codepoints: Phb_codepoint_t; num_codepoints: guint); cdecl; external LazHarfBuzz0_library name 'hb_set_add_sorted_array';
+procedure hb_set_clear(set_: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_set_clear';
+procedure hb_set_del(set_: Phb_set_t; codepoint: Thb_codepoint_t); cdecl; external LazHarfBuzz0_library name 'hb_set_del';
+procedure hb_set_del_range(set_: Phb_set_t; first: Thb_codepoint_t; last: Thb_codepoint_t); cdecl; external LazHarfBuzz0_library name 'hb_set_del_range';
+procedure hb_set_destroy(set_: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_set_destroy';
+procedure hb_set_intersect(set_: Phb_set_t; other: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_set_intersect';
+procedure hb_set_invert(set_: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_set_invert';
+procedure hb_set_set(set_: Phb_set_t; other: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_set_set';
+procedure hb_set_subtract(set_: Phb_set_t; other: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_set_subtract';
+procedure hb_set_symmetric_difference(set_: Phb_set_t; other: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_set_symmetric_difference';
+procedure hb_set_union(set_: Phb_set_t; other: Phb_set_t); cdecl; external LazHarfBuzz0_library name 'hb_set_union';
+procedure hb_shape(font: Phb_font_t; buffer: Phb_buffer_t; features: Phb_feature_t; num_features: guint); cdecl; external LazHarfBuzz0_library name 'hb_shape';
+procedure hb_shape_plan_destroy(shape_plan: Phb_shape_plan_t); cdecl; external LazHarfBuzz0_library name 'hb_shape_plan_destroy';
+procedure hb_tag_to_string(tag: Thb_tag_t; buf: Pgchar); cdecl; external LazHarfBuzz0_library name 'hb_tag_to_string';
+procedure hb_unicode_funcs_destroy(ufuncs: Phb_unicode_funcs_t); cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_destroy';
+procedure hb_unicode_funcs_make_immutable(ufuncs: Phb_unicode_funcs_t); cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_make_immutable';
+procedure hb_unicode_funcs_set_combining_class_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_combining_class_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_set_combining_class_func';
+procedure hb_unicode_funcs_set_compose_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_compose_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_set_compose_func';
+procedure hb_unicode_funcs_set_decompose_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_decompose_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_set_decompose_func';
+procedure hb_unicode_funcs_set_general_category_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_general_category_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_set_general_category_func';
+procedure hb_unicode_funcs_set_mirroring_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_mirroring_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_set_mirroring_func';
+procedure hb_unicode_funcs_set_script_func(ufuncs: Phb_unicode_funcs_t; func: Thb_unicode_script_func_t; user_data: Pgpointer; destroy_: Thb_destroy_func_t); cdecl; external LazHarfBuzz0_library name 'hb_unicode_funcs_set_script_func';
+procedure hb_variation_to_string(variation: Phb_variation_t; buf: Pgchar; size: Pguint); cdecl; external LazHarfBuzz0_library name 'hb_variation_to_string';
+implementation
+function Thb_language_t._string: Pgchar; cdecl;
+begin
+ Result := LazHarfBuzz0.hb_language_to_string(self);
+end;
+
+procedure Thb_feature_t._string(buf: Pgchar; size: Pguint); cdecl;
+begin
+ LazHarfBuzz0.hb_feature_to_string(@self, buf, size);
+end;
+
+procedure Thb_variation_t._string(buf: Pgchar; size: Pguint); cdecl;
+begin
+ LazHarfBuzz0.hb_variation_to_string(@self, buf, size);
+end;
+
+end.