harfbuzz_ffi_bindings library

Classes

hb_blob_t
hb_buffer_t
hb_color_line_t
hb_color_line_t:
hb_color_stop_t
hb_color_stop_t: @offset: the offset of the color stop @is_foreground: whether the color is the foreground @color: the color, unpremultiplied
hb_draw_funcs_t
hb_draw_state_t
hb_draw_state_t @path_open: Whether there is an open path @path_start_x: X component of the start of current path @path_start_y: Y component of the start of current path @current_x: X component of current point @current_y: Y component of current point
hb_face_t
hb_feature_t
hb_feature_t: @tag: The #hb_tag_t tag of the feature @value: The value of the feature. 0 disables the feature, non-zero (usually
hb_font_extents_t
hb_font_extents_t: @ascender: The height of typographic ascenders. @descender: The depth of typographic descenders. @line_gap: The suggested line-spacing gap.
hb_font_funcs_t
hb_font_t
hb_glyph_extents_t
hb_glyph_extents_t: @x_bearing: Distance from the x-origin to the left extremum of the glyph. @y_bearing: Distance from the top extremum of the glyph to the y-origin. @width: Distance from the left extremum of the glyph to the right extremum. @height: Distance from the top extremum of the glyph to the bottom extremum.
hb_glyph_info_t
hb_glyph_info_t: @codepoint: either a Unicode code point (before shaping) or a glyph index (after shaping). @cluster: the index of the character in the original text that corresponds to this #hb_glyph_info_t, or whatever the client passes to hb_buffer_add(). More than one #hb_glyph_info_t can have the same @cluster value, if they resulted from the same character (e.g. one to many glyph substitution), and when more than one character gets merged in the same glyph (e.g. many to one glyph substitution) the #hb_glyph_info_t will have the smallest cluster value of them. By default some characters are merged into the same cluster (e.g. combining marks have the same cluster as their bases) even if they are separate glyphs, hb_buffer_set_cluster_level() allow selecting more fine-grained cluster handling.
hb_glyph_position_t
hb_glyph_position_t: @x_advance: how much the line advances after drawing this glyph when setting text in horizontal direction. @y_advance: how much the line advances after drawing this glyph when setting text in vertical direction. @x_offset: how much the glyph moves on the X-axis before drawing it, this should not affect how much the line advances. @y_offset: how much the glyph moves on the Y-axis before drawing it, this should not affect how much the line advances.
hb_language_impl_t
hb_map_t
hb_ot_color_layer_t
hb_ot_color_layer_t: @glyph: the glyph ID of the layer @color_index: the palette color index of the layer
hb_ot_math_glyph_part_t
hb_ot_math_glyph_part_t: @glyph: The glyph index of the variant part @start_connector_length: The length of the connector on the starting side of the variant part @end_connector_length: The length of the connector on the ending side of the variant part @full_advance: The total advance of the part @flags: #hb_ot_math_glyph_part_flags_t flags for the part
hb_ot_math_glyph_variant_t
hb_ot_math_glyph_variant_t: @glyph: The glyph index of the variant @advance: The advance width of the variant
hb_ot_math_kern_entry_t
hb_ot_math_kern_entry_t: @max_correction_height: The maximum height at which this entry should be used @kern_value: The kern value of the entry
hb_ot_name_entry_t
hb_ot_name_entry_t: @name_id: name ID @language: language
hb_ot_var_axis_info_t
hb_ot_var_axis_info_t: @axis_index: Index of the axis in the variation-axis array @tag: The #hb_tag_t tag identifying the design variation of the axis @name_id: The name table Name ID that provides display names for the axis @flags: The #hb_ot_var_axis_flags_t flags for the axis @min_value: The minimum value on the variation axis that the font covers @default_value: The position on the variation axis corresponding to the font's defaults @max_value: The maximum value on the variation axis that the font covers
hb_ot_var_axis_t
hb_ot_var_axis_t: @tag: axis tag @name_id: axis name identifier @min_value: minimum value of the axis @default_value: default value of the axis @max_value: maximum value of the axis
hb_paint_funcs_t
hb_segment_properties_t
hb_segment_properties_t: @direction: the #hb_direction_t of the buffer, see hb_buffer_set_direction(). @script: the #hb_script_t of the buffer, see hb_buffer_set_script(). @language: the #hb_language_t of the buffer, see hb_buffer_set_language().
hb_set_t
hb_shape_plan_t
hb_subset_input_t
hb_subset_plan_t
hb_unicode_funcs_t
hb_user_data_key_t
hb_user_data_key_t:
hb_variation_t
hb_variation_t: @tag: The #hb_tag_t tag of the variation-axis name @value: The value of the variation axis

Enums

hb_buffer_cluster_level_t
hb_buffer_cluster_level_t: @HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES: Return cluster values grouped by graphemes into monotone order. @HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS: Return cluster values grouped into monotone order. @HB_BUFFER_CLUSTER_LEVEL_CHARACTERS: Don't group cluster values. @HB_BUFFER_CLUSTER_LEVEL_DEFAULT: Default cluster level, equal to @HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES. @HB_BUFFER_CLUSTER_LEVEL_GRAPHEMES: Only group clusters, but don't enforce monotone order.
hb_buffer_content_type_t
hb_buffer_content_type_t: @HB_BUFFER_CONTENT_TYPE_INVALID: Initial value for new buffer. @HB_BUFFER_CONTENT_TYPE_UNICODE: The buffer contains input characters (before shaping). @HB_BUFFER_CONTENT_TYPE_GLYPHS: The buffer contains output glyphs (after shaping).
hb_buffer_diff_flags_t
hb_buffer_diff_flags_t: @HB_BUFFER_DIFF_FLAG_EQUAL: equal buffers. @HB_BUFFER_DIFF_FLAG_CONTENT_TYPE_MISMATCH: buffers with different #hb_buffer_content_type_t. @HB_BUFFER_DIFF_FLAG_LENGTH_MISMATCH: buffers with differing length. @HB_BUFFER_DIFF_FLAG_NOTDEF_PRESENT: .notdef glyph is present in the reference buffer. @HB_BUFFER_DIFF_FLAG_DOTTED_CIRCLE_PRESENT: dotted circle glyph is present in the reference buffer. @HB_BUFFER_DIFF_FLAG_CODEPOINT_MISMATCH: difference in #hb_glyph_info_t.codepoint @HB_BUFFER_DIFF_FLAG_CLUSTER_MISMATCH: difference in #hb_glyph_info_t.cluster @HB_BUFFER_DIFF_FLAG_GLYPH_FLAGS_MISMATCH: difference in #hb_glyph_flags_t. @HB_BUFFER_DIFF_FLAG_POSITION_MISMATCH: difference in #hb_glyph_position_t.
hb_buffer_flags_t
hb_buffer_flags_t: @HB_BUFFER_FLAG_DEFAULT: the default buffer flag. @HB_BUFFER_FLAG_BOT: flag indicating that special handling of the beginning of text paragraph can be applied to this buffer. Should usually be set, unless you are passing to the buffer only part of the text without the full context. @HB_BUFFER_FLAG_EOT: flag indicating that special handling of the end of text paragraph can be applied to this buffer, similar to @HB_BUFFER_FLAG_BOT. @HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES: flag indication that character with Default_Ignorable Unicode property should use the corresponding glyph from the font, instead of hiding them (done by replacing them with the space glyph and zeroing the advance width.) This flag takes precedence over @HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES. @HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES: flag indication that character with Default_Ignorable Unicode property should be removed from glyph string instead of hiding them (done by replacing them with the space glyph and zeroing the advance width.) @HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES takes precedence over this flag. Since: 1.8.0 @HB_BUFFER_FLAG_DO_NOT_INSERT_DOTTED_CIRCLE: flag indicating that a dotted circle should not be inserted in the rendering of incorrect character sequences (such at <0905 093E>). Since: 2.4.0 @HB_BUFFER_FLAG_VERIFY: flag indicating that the hb_shape() call and its variants should perform various verification processes on the results of the shaping operation on the buffer. If the verification fails, then either a buffer message is sent, if a message handler is installed on the buffer, or a message is written to standard error. In either case, the shaping result might be modified to show the failed output. Since: 3.4.0 @HB_BUFFER_FLAG_PRODUCE_UNSAFE_TO_CONCAT: flag indicating that the @HB_GLYPH_FLAG_UNSAFE_TO_CONCAT glyph-flag should be produced by the shaper. By default it will not be produced since it incurs a cost. Since: 4.0.0 @HB_BUFFER_FLAG_PRODUCE_SAFE_TO_INSERT_TATWEEL: flag indicating that the @HB_GLYPH_FLAG_SAFE_TO_INSERT_TATWEEL glyph-flag should be produced by the shaper. By default it will not be produced. Since: 5.1.0 @HB_BUFFER_FLAG_DEFINED: All currently defined flags: Since: 4.4.0
hb_buffer_serialize_flags_t
hb_buffer_serialize_flags_t: @HB_BUFFER_SERIALIZE_FLAG_DEFAULT: serialize glyph names, clusters and positions. @HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS: do not serialize glyph cluster. @HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS: do not serialize glyph position information. @HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES: do no serialize glyph name. @HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS: serialize glyph extents. @HB_BUFFER_SERIALIZE_FLAG_GLYPH_FLAGS: serialize glyph flags. Since: 1.5.0 @HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES: do not serialize glyph advances, glyph offsets will reflect absolute glyph positions. Since: 1.8.0. Note: when this flag is used with a partial range of the buffer (i.e. @start is not 0), calculating the absolute positions has a cost proportional to @start. If the buffer is serialized in many small chunks, this can lead to quadratic behavior. It is recommended to use a larger @buf_size to minimize this cost. @HB_BUFFER_SERIALIZE_FLAG_DEFINED: All currently defined flags. Since: 4.4.0
hb_buffer_serialize_format_t
hb_buffer_serialize_format_t: @HB_BUFFER_SERIALIZE_FORMAT_TEXT: a human-readable, plain text format. @HB_BUFFER_SERIALIZE_FORMAT_JSON: a machine-readable JSON format. @HB_BUFFER_SERIALIZE_FORMAT_INVALID: invalid format.
hb_direction_t
hb_direction_t: @HB_DIRECTION_INVALID: Initial, unset direction. @HB_DIRECTION_LTR: Text is set horizontally from left to right. @HB_DIRECTION_RTL: Text is set horizontally from right to left. @HB_DIRECTION_TTB: Text is set vertically from top to bottom. @HB_DIRECTION_BTT: Text is set vertically from bottom to top.
hb_draw_line_cap_t
hb_draw_line_cap_t: @HB_DRAW_LINE_CAP_BUTT: No cap; the line ends exactly at its endpoint. @HB_DRAW_LINE_CAP_SQUARE: Square cap; the line is extended past its endpoint by half the local stroke width. Useful for composing closed shapes from line segments (e.g. a rectangle made from four lines).
hb_glyph_flags_t
hb_glyph_flags_t: @HB_GLYPH_FLAG_UNSAFE_TO_BREAK: Indicates that if input text is broken at the beginning of the cluster this glyph is part of, then both sides need to be re-shaped, as the result might be different. On the flip side, it means that when this flag is not present, then it is safe to break the glyph-run at the beginning of this cluster, and the two sides will represent the exact same result one would get if breaking input text at the beginning of this cluster and shaping the two sides separately. This can be used to optimize paragraph layout, by avoiding re-shaping of each line after line-breaking. @HB_GLYPH_FLAG_UNSAFE_TO_CONCAT: Indicates that if input text is changed on one side of the beginning of the cluster this glyph is part of, then the shaping results for the other side might change. Note that the absence of this flag will NOT by itself mean that it IS safe to concat text. Only two pieces of text both of which clear of this flag can be concatenated safely. This can be used to optimize paragraph layout, by avoiding re-shaping of each line after line-breaking, by limiting the reshaping to a small piece around the breaking position only, even if the breaking position carries the #HB_GLYPH_FLAG_UNSAFE_TO_BREAK or when hyphenation or other text transformation happens at line-break position, in the following way:
hb_memory_mode_t
hb_memory_mode_t: @HB_MEMORY_MODE_DUPLICATE: HarfBuzz immediately makes a copy of the data. @HB_MEMORY_MODE_READONLY: HarfBuzz client will never modify the data, and HarfBuzz will never modify the data. @HB_MEMORY_MODE_WRITABLE: HarfBuzz client made a copy of the data solely for HarfBuzz, so HarfBuzz may modify the data. @HB_MEMORY_MODE_READONLY_MAY_MAKE_WRITABLE: See above
hb_ot_color_palette_flags_t
hb_ot_color_palette_flags_t: @HB_OT_COLOR_PALETTE_FLAG_DEFAULT: Default indicating that there is nothing special to note about a color palette. @HB_OT_COLOR_PALETTE_FLAG_USABLE_WITH_LIGHT_BACKGROUND: Flag indicating that the color palette is appropriate to use when displaying the font on a light background such as white. @HB_OT_COLOR_PALETTE_FLAG_USABLE_WITH_DARK_BACKGROUND: Flag indicating that the color palette is appropriate to use when displaying the font on a dark background such as black.
hb_ot_layout_baseline_tag_t
hb_ot_layout_baseline_tag_t: @HB_OT_LAYOUT_BASELINE_TAG_ROMAN: The baseline used by alphabetic scripts such as Latin, Cyrillic and Greek. In vertical writing mode, the alphabetic baseline for characters rotated 90 degrees clockwise. (This would not apply to alphabetic characters that remain upright in vertical writing mode, since these characters are not rotated.) @HB_OT_LAYOUT_BASELINE_TAG_HANGING: The hanging baseline. In horizontal direction, this is the horizontal line from which syllables seem, to hang in Tibetan and other similar scripts. In vertical writing mode, for Tibetan (or some other similar script) characters rotated 90 degrees clockwise. @HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_BOTTOM_OR_LEFT: Ideographic character face bottom or left edge, if the direction is horizontal or vertical, respectively. @HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_TOP_OR_RIGHT: Ideographic character face top or right edge, if the direction is horizontal or vertical, respectively. @HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_CENTRAL: The center of the ideographic character face. Since: 4.0.0 @HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_BOTTOM_OR_LEFT: Ideographic em-box bottom or left edge, if the direction is horizontal or vertical, respectively. @HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_TOP_OR_RIGHT: Ideographic em-box top or right edge baseline, @HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_CENTRAL: The center of the ideographic em-box. Since: 4.0.0 if the direction is horizontal or vertical, respectively. @HB_OT_LAYOUT_BASELINE_TAG_MATH: The baseline about which mathematical characters are centered. In vertical writing mode when mathematical characters rotated 90 degrees clockwise, are centered.
hb_ot_layout_glyph_class_t
hb_ot_layout_glyph_class_t: @HB_OT_LAYOUT_GLYPH_CLASS_UNCLASSIFIED: Glyphs not matching the other classifications @HB_OT_LAYOUT_GLYPH_CLASS_BASE_GLYPH: Spacing, single characters, capable of accepting marks @HB_OT_LAYOUT_GLYPH_CLASS_LIGATURE: Glyphs that represent ligation of multiple characters @HB_OT_LAYOUT_GLYPH_CLASS_MARK: Non-spacing, combining glyphs that represent marks @HB_OT_LAYOUT_GLYPH_CLASS_COMPONENT: Spacing glyphs that represent part of a single character
hb_ot_math_constant_t
hb_ot_math_constant_t: @HB_OT_MATH_CONSTANT_SCRIPT_PERCENT_SCALE_DOWN: scriptPercentScaleDown @HB_OT_MATH_CONSTANT_SCRIPT_SCRIPT_PERCENT_SCALE_DOWN: scriptScriptPercentScaleDown @HB_OT_MATH_CONSTANT_DELIMITED_SUB_FORMULA_MIN_HEIGHT: delimitedSubFormulaMinHeight @HB_OT_MATH_CONSTANT_DISPLAY_OPERATOR_MIN_HEIGHT: displayOperatorMinHeight @HB_OT_MATH_CONSTANT_MATH_LEADING: mathLeading @HB_OT_MATH_CONSTANT_AXIS_HEIGHT: axisHeight @HB_OT_MATH_CONSTANT_ACCENT_BASE_HEIGHT: accentBaseHeight @HB_OT_MATH_CONSTANT_FLATTENED_ACCENT_BASE_HEIGHT: flattenedAccentBaseHeight @HB_OT_MATH_CONSTANT_SUBSCRIPT_SHIFT_DOWN: subscriptShiftDown @HB_OT_MATH_CONSTANT_SUBSCRIPT_TOP_MAX: subscriptTopMax @HB_OT_MATH_CONSTANT_SUBSCRIPT_BASELINE_DROP_MIN: subscriptBaselineDropMin @HB_OT_MATH_CONSTANT_SUPERSCRIPT_SHIFT_UP: superscriptShiftUp @HB_OT_MATH_CONSTANT_SUPERSCRIPT_SHIFT_UP_CRAMPED: superscriptShiftUpCramped @HB_OT_MATH_CONSTANT_SUPERSCRIPT_BOTTOM_MIN: superscriptBottomMin @HB_OT_MATH_CONSTANT_SUPERSCRIPT_BASELINE_DROP_MAX: superscriptBaselineDropMax @HB_OT_MATH_CONSTANT_SUB_SUPERSCRIPT_GAP_MIN: subSuperscriptGapMin @HB_OT_MATH_CONSTANT_SUPERSCRIPT_BOTTOM_MAX_WITH_SUBSCRIPT: superscriptBottomMaxWithSubscript @HB_OT_MATH_CONSTANT_SPACE_AFTER_SCRIPT: spaceAfterScript @HB_OT_MATH_CONSTANT_UPPER_LIMIT_GAP_MIN: upperLimitGapMin @HB_OT_MATH_CONSTANT_UPPER_LIMIT_BASELINE_RISE_MIN: upperLimitBaselineRiseMin @HB_OT_MATH_CONSTANT_LOWER_LIMIT_GAP_MIN: lowerLimitGapMin @HB_OT_MATH_CONSTANT_LOWER_LIMIT_BASELINE_DROP_MIN: lowerLimitBaselineDropMin @HB_OT_MATH_CONSTANT_STACK_TOP_SHIFT_UP: stackTopShiftUp @HB_OT_MATH_CONSTANT_STACK_TOP_DISPLAY_STYLE_SHIFT_UP: stackTopDisplayStyleShiftUp @HB_OT_MATH_CONSTANT_STACK_BOTTOM_SHIFT_DOWN: stackBottomShiftDown @HB_OT_MATH_CONSTANT_STACK_BOTTOM_DISPLAY_STYLE_SHIFT_DOWN: stackBottomDisplayStyleShiftDown @HB_OT_MATH_CONSTANT_STACK_GAP_MIN: stackGapMin @HB_OT_MATH_CONSTANT_STACK_DISPLAY_STYLE_GAP_MIN: stackDisplayStyleGapMin @HB_OT_MATH_CONSTANT_STRETCH_STACK_TOP_SHIFT_UP: stretchStackTopShiftUp @HB_OT_MATH_CONSTANT_STRETCH_STACK_BOTTOM_SHIFT_DOWN: stretchStackBottomShiftDown @HB_OT_MATH_CONSTANT_STRETCH_STACK_GAP_ABOVE_MIN: stretchStackGapAboveMin @HB_OT_MATH_CONSTANT_STRETCH_STACK_GAP_BELOW_MIN: stretchStackGapBelowMin @HB_OT_MATH_CONSTANT_FRACTION_NUMERATOR_SHIFT_UP: fractionNumeratorShiftUp @HB_OT_MATH_CONSTANT_FRACTION_NUMERATOR_DISPLAY_STYLE_SHIFT_UP: fractionNumeratorDisplayStyleShiftUp @HB_OT_MATH_CONSTANT_FRACTION_DENOMINATOR_SHIFT_DOWN: fractionDenominatorShiftDown @HB_OT_MATH_CONSTANT_FRACTION_DENOMINATOR_DISPLAY_STYLE_SHIFT_DOWN: fractionDenominatorDisplayStyleShiftDown @HB_OT_MATH_CONSTANT_FRACTION_NUMERATOR_GAP_MIN: fractionNumeratorGapMin @HB_OT_MATH_CONSTANT_FRACTION_NUM_DISPLAY_STYLE_GAP_MIN: fractionNumDisplayStyleGapMin @HB_OT_MATH_CONSTANT_FRACTION_RULE_THICKNESS: fractionRuleThickness @HB_OT_MATH_CONSTANT_FRACTION_DENOMINATOR_GAP_MIN: fractionDenominatorGapMin @HB_OT_MATH_CONSTANT_FRACTION_DENOM_DISPLAY_STYLE_GAP_MIN: fractionDenomDisplayStyleGapMin @HB_OT_MATH_CONSTANT_SKEWED_FRACTION_HORIZONTAL_GAP: skewedFractionHorizontalGap @HB_OT_MATH_CONSTANT_SKEWED_FRACTION_VERTICAL_GAP: skewedFractionVerticalGap @HB_OT_MATH_CONSTANT_OVERBAR_VERTICAL_GAP: overbarVerticalGap @HB_OT_MATH_CONSTANT_OVERBAR_RULE_THICKNESS: overbarRuleThickness @HB_OT_MATH_CONSTANT_OVERBAR_EXTRA_ASCENDER: overbarExtraAscender @HB_OT_MATH_CONSTANT_UNDERBAR_VERTICAL_GAP: underbarVerticalGap @HB_OT_MATH_CONSTANT_UNDERBAR_RULE_THICKNESS: underbarRuleThickness @HB_OT_MATH_CONSTANT_UNDERBAR_EXTRA_DESCENDER: underbarExtraDescender @HB_OT_MATH_CONSTANT_RADICAL_VERTICAL_GAP: radicalVerticalGap @HB_OT_MATH_CONSTANT_RADICAL_DISPLAY_STYLE_VERTICAL_GAP: radicalDisplayStyleVerticalGap @HB_OT_MATH_CONSTANT_RADICAL_RULE_THICKNESS: radicalRuleThickness @HB_OT_MATH_CONSTANT_RADICAL_EXTRA_ASCENDER: radicalExtraAscender @HB_OT_MATH_CONSTANT_RADICAL_KERN_BEFORE_DEGREE: radicalKernBeforeDegree @HB_OT_MATH_CONSTANT_RADICAL_KERN_AFTER_DEGREE: radicalKernAfterDegree @HB_OT_MATH_CONSTANT_RADICAL_DEGREE_BOTTOM_RAISE_PERCENT: radicalDegreeBottomRaisePercent
hb_ot_math_glyph_part_flags_t
hb_ot_math_glyph_part_flags_t: @HB_OT_MATH_GLYPH_PART_FLAG_EXTENDER: This is an extender glyph part that can be repeated to reach the desired length.
hb_ot_math_kern_t
hb_ot_math_kern_t: @HB_OT_MATH_KERN_TOP_RIGHT: The top right corner of the glyph. @HB_OT_MATH_KERN_TOP_LEFT: The top left corner of the glyph. @HB_OT_MATH_KERN_BOTTOM_RIGHT: The bottom right corner of the glyph. @HB_OT_MATH_KERN_BOTTOM_LEFT: The bottom left corner of the glyph.
hb_ot_meta_tag_t
hb_ot_meta_tag_t: @HB_OT_META_TAG_DESIGN_LANGUAGES: Design languages. Text, using only Basic Latin (ASCII) characters. Indicates languages and/or scripts for the user audiences that the font was primarily designed for. @HB_OT_META_TAG_SUPPORTED_LANGUAGES: Supported languages. Text, using only Basic Latin (ASCII) characters. Indicates languages and/or scripts that the font is declared to be capable of supporting.
hb_ot_metrics_tag_t
hb_ot_metrics_tag_t: @HB_OT_METRICS_TAG_HORIZONTAL_ASCENDER: horizontal ascender. @HB_OT_METRICS_TAG_HORIZONTAL_DESCENDER: horizontal descender. @HB_OT_METRICS_TAG_HORIZONTAL_LINE_GAP: horizontal line gap. @HB_OT_METRICS_TAG_HORIZONTAL_CLIPPING_ASCENT: horizontal clipping ascent. @HB_OT_METRICS_TAG_HORIZONTAL_CLIPPING_DESCENT: horizontal clipping descent. @HB_OT_METRICS_TAG_VERTICAL_ASCENDER: vertical ascender. @HB_OT_METRICS_TAG_VERTICAL_DESCENDER: vertical descender. @HB_OT_METRICS_TAG_VERTICAL_LINE_GAP: vertical line gap. @HB_OT_METRICS_TAG_HORIZONTAL_CARET_RISE: horizontal caret rise. @HB_OT_METRICS_TAG_HORIZONTAL_CARET_RUN: horizontal caret run. @HB_OT_METRICS_TAG_HORIZONTAL_CARET_OFFSET: horizontal caret offset. @HB_OT_METRICS_TAG_VERTICAL_CARET_RISE: vertical caret rise. @HB_OT_METRICS_TAG_VERTICAL_CARET_RUN: vertical caret run. @HB_OT_METRICS_TAG_VERTICAL_CARET_OFFSET: vertical caret offset. @HB_OT_METRICS_TAG_X_HEIGHT: x height. @HB_OT_METRICS_TAG_CAP_HEIGHT: cap height. @HB_OT_METRICS_TAG_SUBSCRIPT_EM_X_SIZE: subscript em x size. @HB_OT_METRICS_TAG_SUBSCRIPT_EM_Y_SIZE: subscript em y size. @HB_OT_METRICS_TAG_SUBSCRIPT_EM_X_OFFSET: subscript em x offset. @HB_OT_METRICS_TAG_SUBSCRIPT_EM_Y_OFFSET: subscript em y offset. @HB_OT_METRICS_TAG_SUPERSCRIPT_EM_X_SIZE: superscript em x size. @HB_OT_METRICS_TAG_SUPERSCRIPT_EM_Y_SIZE: superscript em y size. @HB_OT_METRICS_TAG_SUPERSCRIPT_EM_X_OFFSET: superscript em x offset. @HB_OT_METRICS_TAG_SUPERSCRIPT_EM_Y_OFFSET: superscript em y offset. @HB_OT_METRICS_TAG_STRIKEOUT_SIZE: strikeout size. @HB_OT_METRICS_TAG_STRIKEOUT_OFFSET: strikeout offset. @HB_OT_METRICS_TAG_UNDERLINE_SIZE: underline size. @HB_OT_METRICS_TAG_UNDERLINE_OFFSET: underline offset.
hb_ot_name_id_predefined_t
hb_ot_name_id_predefined_t: @HB_OT_NAME_ID_COPYRIGHT: Copyright notice @HB_OT_NAME_ID_FONT_FAMILY: Font Family name @HB_OT_NAME_ID_FONT_SUBFAMILY: Font Subfamily name @HB_OT_NAME_ID_UNIQUE_ID: Unique font identifier @HB_OT_NAME_ID_FULL_NAME: Full font name that reflects all family and relevant subfamily descriptors @HB_OT_NAME_ID_VERSION_STRING: Version string @HB_OT_NAME_ID_POSTSCRIPT_NAME: PostScript name for the font @HB_OT_NAME_ID_TRADEMARK: Trademark @HB_OT_NAME_ID_MANUFACTURER: Manufacturer Name @HB_OT_NAME_ID_DESIGNER: Designer @HB_OT_NAME_ID_DESCRIPTION: Description @HB_OT_NAME_ID_VENDOR_URL: URL of font vendor @HB_OT_NAME_ID_DESIGNER_URL: URL of typeface designer @HB_OT_NAME_ID_LICENSE: License Description @HB_OT_NAME_ID_LICENSE_URL: URL where additional licensing information can be found @HB_OT_NAME_ID_TYPOGRAPHIC_FAMILY: Typographic Family name @HB_OT_NAME_ID_TYPOGRAPHIC_SUBFAMILY: Typographic Subfamily name @HB_OT_NAME_ID_MAC_FULL_NAME: Compatible Full Name for MacOS @HB_OT_NAME_ID_SAMPLE_TEXT: Sample text @HB_OT_NAME_ID_CID_FINDFONT_NAME: PostScript CID findfont name @HB_OT_NAME_ID_WWS_FAMILY: WWS Family Name @HB_OT_NAME_ID_WWS_SUBFAMILY: WWS Subfamily Name @HB_OT_NAME_ID_LIGHT_BACKGROUND: Light Background Palette @HB_OT_NAME_ID_DARK_BACKGROUND: Dark Background Palette @HB_OT_NAME_ID_VARIATIONS_PS_PREFIX: Variations PostScript Name Prefix @HB_OT_NAME_ID_INVALID: Value to represent a nonexistent name ID.
hb_ot_var_axis_flags_t
hb_ot_var_axis_flags_t: @HB_OT_VAR_AXIS_FLAG_HIDDEN: The axis should not be exposed directly in user interfaces.
hb_paint_composite_mode_t
hb_paint_composite_mode_t: @HB_PAINT_COMPOSITE_MODE_CLEAR: clear destination layer (bounded) @HB_PAINT_COMPOSITE_MODE_SRC: replace destination layer (bounded) @HB_PAINT_COMPOSITE_MODE_SRC_OVER: draw source layer on top of destination layer (bounded) @HB_PAINT_COMPOSITE_MODE_SRC_IN: draw source where there was destination content (unbounded) @HB_PAINT_COMPOSITE_MODE_SRC_OUT: draw source where there was no destination content (unbounded) @HB_PAINT_COMPOSITE_MODE_SRC_ATOP: draw source on top of destination content and only there @HB_PAINT_COMPOSITE_MODE_DEST: ignore the source @HB_PAINT_COMPOSITE_MODE_DEST_OVER: draw destination on top of source @HB_PAINT_COMPOSITE_MODE_DEST_IN: leave destination only where there was source content (unbounded) @HB_PAINT_COMPOSITE_MODE_DEST_OUT: leave destination only where there was no source content @HB_PAINT_COMPOSITE_MODE_DEST_ATOP: leave destination on top of source content and only there (unbounded) @HB_PAINT_COMPOSITE_MODE_XOR: source and destination are shown where there is only one of them @HB_PAINT_COMPOSITE_MODE_PLUS: source and destination layers are accumulated @HB_PAINT_COMPOSITE_MODE_MULTIPLY: source and destination layers are multiplied. This causes the result to be at least as dark as the darker inputs. @HB_PAINT_COMPOSITE_MODE_SCREEN: source and destination are complemented and multiplied. This causes the result to be at least as light as the lighter inputs. @HB_PAINT_COMPOSITE_MODE_OVERLAY: multiplies or screens, depending on the lightness of the destination color. @HB_PAINT_COMPOSITE_MODE_DARKEN: replaces the destination with the source if it is darker, otherwise keeps the source. @HB_PAINT_COMPOSITE_MODE_LIGHTEN: replaces the destination with the source if it is lighter, otherwise keeps the source. @HB_PAINT_COMPOSITE_MODE_COLOR_DODGE: brightens the destination color to reflect the source color. @HB_PAINT_COMPOSITE_MODE_COLOR_BURN: darkens the destination color to reflect the source color. @HB_PAINT_COMPOSITE_MODE_HARD_LIGHT: Multiplies or screens, dependent on source color. @HB_PAINT_COMPOSITE_MODE_SOFT_LIGHT: Darkens or lightens, dependent on source color. @HB_PAINT_COMPOSITE_MODE_DIFFERENCE: Takes the difference of the source and destination color. @HB_PAINT_COMPOSITE_MODE_EXCLUSION: Produces an effect similar to difference, but with lower contrast. @HB_PAINT_COMPOSITE_MODE_HSL_HUE: Creates a color with the hue of the source and the saturation and luminosity of the target. @HB_PAINT_COMPOSITE_MODE_HSL_SATURATION: Creates a color with the saturation of the source and the hue and luminosity of the target. Painting with this mode onto a gray area produces no change. @HB_PAINT_COMPOSITE_MODE_HSL_COLOR: Creates a color with the hue and saturation of the source and the luminosity of the target. This preserves the gray levels of the target and is useful for coloring monochrome images or tinting color images. @HB_PAINT_COMPOSITE_MODE_HSL_LUMINOSITY: Creates a color with the luminosity of the source and the hue and saturation of the target. This produces an inverse effect to @HB_PAINT_COMPOSITE_MODE_HSL_COLOR.
hb_paint_extend_t
hb_paint_extend_t: @HB_PAINT_EXTEND_PAD: Outside the defined interval, the color of the closest color stop is used. @HB_PAINT_EXTEND_REPEAT: The color line is repeated over repeated multiples of the defined interval @HB_PAINT_EXTEND_REFLECT: The color line is repeated over repeated intervals, as for the repeat mode. However, in each repeated interval, the ordering of color stops is the reverse of the adjacent interval.
hb_script_t
https://docs.google.com/spreadsheets/d/1Y90M0Ie3MUJ6UVCRDOypOtijlMDLNNyyLk36T6iMu0o
hb_style_tag_t
hb_style_tag_t: @HB_STYLE_TAG_ITALIC: Used to vary between non-italic and italic. A value of 0 can be interpreted as "Roman" (non-italic); a value of 1 can be interpreted as (fully) italic. @HB_STYLE_TAG_OPTICAL_SIZE: Used to vary design to suit different text sizes. Non-zero. Values can be interpreted as text size, in points. @HB_STYLE_TAG_SLANT_ANGLE: Used to vary between upright and slanted text. Values must be greater than -90 and less than +90. Values can be interpreted as the angle, in counter-clockwise degrees, of oblique slant from whatever the designer considers to be upright for that font design. Typical right-leaning Italic fonts have a negative slant angle (typically around -12) @HB_STYLE_TAG_SLANT_RATIO: same as @HB_STYLE_TAG_SLANT_ANGLE expression as ratio. Typical right-leaning Italic fonts have a positive slant ratio (typically around 0.2) @HB_STYLE_TAG_WIDTH: Used to vary width of text from narrower to wider. Non-zero. Values can be interpreted as a percentage of whatever the font designer considers “normal width” for that font design. @HB_STYLE_TAG_WEIGHT: Used to vary stroke thicknesses or other design details to give variation from lighter to blacker. Values can be interpreted in direct comparison to values for usWeightClass in the OS/2 table, or the CSS font-weight property.
hb_subset_flags_t
hb_subset_flags_t: @HB_SUBSET_FLAGS_DEFAULT: all flags at their default value of false. @HB_SUBSET_FLAGS_NO_HINTING: If set hinting instructions will be dropped in the produced subset. Otherwise hinting instructions will be retained. @HB_SUBSET_FLAGS_RETAIN_GIDS: If set glyph indices will not be modified in the produced subset. If glyphs are dropped their indices will be retained as an empty glyph. @HB_SUBSET_FLAGS_DESUBROUTINIZE: If set and subsetting a CFF font the subsetter will attempt to remove subroutines from the CFF glyphs. @HB_SUBSET_FLAGS_NAME_LEGACY: If set non-unicode name records will be retained in the subset. @HB_SUBSET_FLAGS_SET_OVERLAPS_FLAG: If set the subsetter will set the OVERLAP_SIMPLE flag on each simple glyph. @HB_SUBSET_FLAGS_PASSTHROUGH_UNRECOGNIZED: If set the subsetter will not drop unrecognized tables and instead pass them through untouched. @HB_SUBSET_FLAGS_NOTDEF_OUTLINE: If set the notdef glyph outline will be retained in the final subset. @HB_SUBSET_FLAGS_GLYPH_NAMES: If set the PS glyph names will be retained in the final subset. @HB_SUBSET_FLAGS_NO_PRUNE_UNICODE_RANGES: If set then the unicode ranges in OS/2 will not be recalculated. @HB_SUBSET_FLAGS_NO_LAYOUT_CLOSURE: If set do not perform glyph closure on layout substitution rules (GSUB). Since: 7.2.0. @HB_SUBSET_FLAGS_OPTIMIZE_IUP_DELTAS: If set perform IUP delta optimization on the remaining gvar table's deltas. Since: 8.5.0 @HB_SUBSET_FLAGS_NO_BIDI_CLOSURE: If set do not pull mirrored versions of input codepoints into the subset. Since: 11.1.0 @HB_SUBSET_FLAGS_IFTB_REQUIREMENTS: If set enforce requirements on the output subset to allow it to be used with incremental font transfer IFTB patches. Primarily, this forces all outline data to use long (32 bit) offsets. Since: EXPERIMENTAL @HB_SUBSET_FLAGS_RETAIN_NUM_GLYPHS: If this flag is set along side HB_SUBSET_FLAGS_RETAIN_GIDS then the number of glyphs in the font won't be reduced as a result of subsetting. If necessary empty glyphs will be included at the end of the font to keep the number of glyphs unchanged. @HB_SUBSET_FLAGS_DOWNGRADE_CFF2: If set and instantiating a variable font, convert the output CFF2 table to CFF1. This enables compatibility with older renderers that don't support CFF2. Since: 13.0.0
hb_subset_sets_t
hb_subset_sets_t: @HB_SUBSET_SETS_GLYPH_INDEX: the set of glyph indexes to retain in the subset. @HB_SUBSET_SETS_UNICODE: the set of unicode codepoints to retain in the subset. @HB_SUBSET_SETS_NO_SUBSET_TABLE_TAG: the set of table tags which specifies tables that should not be subsetted. @HB_SUBSET_SETS_DROP_TABLE_TAG: the set of table tags which specifies tables which will be dropped in the subset. @HB_SUBSET_SETS_NAME_ID: the set of name ids that will be retained. @HB_SUBSET_SETS_NAME_LANG_ID: the set of name lang ids that will be retained. @HB_SUBSET_SETS_LAYOUT_FEATURE_TAG: the set of layout feature tags that will be retained in the subset. @HB_SUBSET_SETS_LAYOUT_SCRIPT_TAG: the set of layout script tags that will be retained in the subset. Defaults to all tags. Since: 5.0.0
hb_unicode_combining_class_t
hb_unicode_combining_class_t: @HB_UNICODE_COMBINING_CLASS_NOT_REORDERED: Spacing and enclosing marks; also many vowel and consonant signs, even if nonspacing @HB_UNICODE_COMBINING_CLASS_OVERLAY: Marks which overlay a base letter or symbol @HB_UNICODE_COMBINING_CLASS_NUKTA: Diacritic nukta marks in Brahmi-derived scripts @HB_UNICODE_COMBINING_CLASS_KANA_VOICING: Hiragana/Katakana voicing marks @HB_UNICODE_COMBINING_CLASS_VIRAMA: Viramas @HB_UNICODE_COMBINING_CLASS_CCC10: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC11: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC12: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC13: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC14: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC15: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC16: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC17: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC18: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC19: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC20: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC21: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC22: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC23: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC24: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC25: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC26: Hebrew @HB_UNICODE_COMBINING_CLASS_CCC27: Arabic @HB_UNICODE_COMBINING_CLASS_CCC28: Arabic @HB_UNICODE_COMBINING_CLASS_CCC29: Arabic @HB_UNICODE_COMBINING_CLASS_CCC30: Arabic @HB_UNICODE_COMBINING_CLASS_CCC31: Arabic @HB_UNICODE_COMBINING_CLASS_CCC32: Arabic @HB_UNICODE_COMBINING_CLASS_CCC33: Arabic @HB_UNICODE_COMBINING_CLASS_CCC34: Arabic @HB_UNICODE_COMBINING_CLASS_CCC35: Arabic @HB_UNICODE_COMBINING_CLASS_CCC36: Syriac @HB_UNICODE_COMBINING_CLASS_CCC84: Telugu @HB_UNICODE_COMBINING_CLASS_CCC91: Telugu @HB_UNICODE_COMBINING_CLASS_CCC103: Thai @HB_UNICODE_COMBINING_CLASS_CCC107: Thai @HB_UNICODE_COMBINING_CLASS_CCC118: Lao @HB_UNICODE_COMBINING_CLASS_CCC122: Lao @HB_UNICODE_COMBINING_CLASS_CCC129: Tibetan @HB_UNICODE_COMBINING_CLASS_CCC130: Tibetan @HB_UNICODE_COMBINING_CLASS_CCC132: Tibetan Since: 7.2.0 @HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW_LEFT: Marks attached at the bottom left @HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW: Marks attached directly below @HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE: Marks attached directly above @HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE_RIGHT: Marks attached at the top right @HB_UNICODE_COMBINING_CLASS_BELOW_LEFT: Distinct marks at the bottom left @HB_UNICODE_COMBINING_CLASS_BELOW: Distinct marks directly below @HB_UNICODE_COMBINING_CLASS_BELOW_RIGHT: Distinct marks at the bottom right @HB_UNICODE_COMBINING_CLASS_LEFT: Distinct marks to the left @HB_UNICODE_COMBINING_CLASS_RIGHT: Distinct marks to the right @HB_UNICODE_COMBINING_CLASS_ABOVE_LEFT: Distinct marks at the top left @HB_UNICODE_COMBINING_CLASS_ABOVE: Distinct marks directly above @HB_UNICODE_COMBINING_CLASS_ABOVE_RIGHT: Distinct marks at the top right @HB_UNICODE_COMBINING_CLASS_DOUBLE_BELOW: Distinct marks subtending two bases @HB_UNICODE_COMBINING_CLASS_DOUBLE_ABOVE: Distinct marks extending above two bases @HB_UNICODE_COMBINING_CLASS_IOTA_SUBSCRIPT: Greek iota subscript only @HB_UNICODE_COMBINING_CLASS_INVALID: Invalid combining class
hb_unicode_general_category_t
Unicode Character Database property: General_Category (gc)

Constants

HB_BUFFER_FLAGS_DEFAULT → const int
HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT → const int
HB_BUFFER_SERIALIZE_FLAGS_DEFAULT → const int
HB_CODEPOINT_INVALID → const int
HB_FEATURE_GLOBAL_END → const int
HB_FEATURE_GLOBAL_START → const int
HB_FONT_NO_VAR_NAMED_INSTANCE → const int
HB_MAP_VALUE_INVALID → const int
HB_MATH_GLYPH_PART_FLAG_EXTENDER → const int
HB_OT_LAYOUT_DEFAULT_LANGUAGE_INDEX → const int
HB_OT_LAYOUT_NO_FEATURE_INDEX → const int
HB_OT_LAYOUT_NO_SCRIPT_INDEX → const int
HB_OT_LAYOUT_NO_VARIATIONS_INDEX → const int
HB_OT_MATH_SCRIPT → const int
HB_OT_MAX_TAGS_PER_LANGUAGE → const int
HB_OT_MAX_TAGS_PER_SCRIPT → const int
HB_OT_SHAPE_BUFFER_FORMAT_SERIAL → const int
HB_OT_TAG_BASE → const int
HB_OT_TAG_DEFAULT_LANGUAGE → const int
HB_OT_TAG_DEFAULT_SCRIPT → const int
HB_OT_TAG_GDEF → const int
HB_OT_TAG_GPOS → const int
HB_OT_TAG_GSUB → const int
HB_OT_TAG_JSTF → const int
HB_OT_TAG_MATH → const int
HB_OT_TAG_MATH_SCRIPT → const int
HB_OT_TAG_VAR_AXIS_ITALIC → const int
HB_OT_TAG_VAR_AXIS_OPTICAL_SIZE → const int
HB_OT_TAG_VAR_AXIS_SLANT → const int
HB_OT_TAG_VAR_AXIS_WEIGHT → const int
HB_OT_TAG_VAR_AXIS_WIDTH → const int
HB_OT_VAR_NO_AXIS_INDEX → const int
HB_PAINT_IMAGE_FORMAT_BGRA → const int
HB_PAINT_IMAGE_FORMAT_PNG → const int
HB_PAINT_IMAGE_FORMAT_SVG → const int
HB_SCRIPT_CANADIAN_ABORIGINAL → const int
HB_SET_VALUE_INVALID → const int
HB_TAG_MAX → const int
HB_TAG_MAX_SIGNED → const int
HB_TAG_NONE → const int
HB_UNICODE_COMBINING_CLASS_CCC133 → const int
HB_UNICODE_MAX → const int
HB_UNICODE_MAX_DECOMPOSITION_LEN → const int
HB_VERSION_MAJOR → const int
HB_VERSION_MICRO → const int
HB_VERSION_MINOR → const int
HB_VERSION_STRING → const String

Functions

hb_blob_copy_writable_or_fail(Pointer<hb_blob_t> blob) Pointer<hb_blob_t>
hb_blob_create(Pointer<Char> data, int length, hb_memory_mode_t mode, Pointer<Void> user_data, hb_destroy_func_t destroy) Pointer<hb_blob_t>
hb_blob_create_from_file(Pointer<Char> file_name) Pointer<hb_blob_t>
hb_blob_create_from_file_or_fail(Pointer<Char> file_name) Pointer<hb_blob_t>
hb_blob_create_or_fail(Pointer<Char> data, int length, hb_memory_mode_t mode, Pointer<Void> user_data, hb_destroy_func_t destroy) Pointer<hb_blob_t>
hb_blob_create_sub_blob(Pointer<hb_blob_t> parent, int offset, int length) Pointer<hb_blob_t>
Always creates with MEMORY_MODE_READONLY. Even if the parent blob is writable, we don't want the user of the sub-blob to be able to modify the parent data as that data may be shared among multiple sub-blobs.
hb_blob_destroy(Pointer<hb_blob_t> blob) → void
hb_blob_get_data(Pointer<hb_blob_t> blob, Pointer<UnsignedInt> length) Pointer<Char>
hb_blob_get_data_writable(Pointer<hb_blob_t> blob, Pointer<UnsignedInt> length) Pointer<Char>
hb_blob_get_empty() Pointer<hb_blob_t>
hb_blob_get_length(Pointer<hb_blob_t> blob) int
hb_blob_get_user_data(Pointer<hb_blob_t> blob, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_blob_is_immutable(Pointer<hb_blob_t> blob) int
hb_blob_make_immutable(Pointer<hb_blob_t> blob) → void
hb_blob_reference(Pointer<hb_blob_t> blob) Pointer<hb_blob_t>
hb_blob_set_user_data(Pointer<hb_blob_t> blob, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_buffer_add(Pointer<hb_buffer_t> buffer, int codepoint, int cluster) → void
Filling the buffer in
hb_buffer_add_codepoints(Pointer<hb_buffer_t> buffer, Pointer<hb_codepoint_t> text, int text_length, int item_offset, int item_length) → void
hb_buffer_add_latin1(Pointer<hb_buffer_t> buffer, Pointer<Uint8> text, int text_length, int item_offset, int item_length) → void
hb_buffer_add_utf16(Pointer<hb_buffer_t> buffer, Pointer<Uint16> text, int text_length, int item_offset, int item_length) → void
hb_buffer_add_utf32(Pointer<hb_buffer_t> buffer, Pointer<hb_codepoint_t> text, int text_length, int item_offset, int item_length) → void
hb_buffer_add_utf8(Pointer<hb_buffer_t> buffer, Pointer<Char> text, int text_length, int item_offset, int item_length) → void
hb_buffer_allocation_successful(Pointer<hb_buffer_t> buffer) int
hb_buffer_append(Pointer<hb_buffer_t> buffer, Pointer<hb_buffer_t> source, int start, int end) → void
hb_buffer_changed(Pointer<hb_buffer_t> buffer) → void
hb_buffer_clear_contents(Pointer<hb_buffer_t> buffer) → void
Content API.
hb_buffer_create() Pointer<hb_buffer_t>
hb_buffer_create_similar(Pointer<hb_buffer_t> src) Pointer<hb_buffer_t>
hb_buffer_deserialize_glyphs(Pointer<hb_buffer_t> buffer, Pointer<Char> buf, int buf_len, Pointer<Pointer<Char>> end_ptr, Pointer<hb_font_t> font, hb_buffer_serialize_format_t format) Darthb_bool_t
hb_buffer_deserialize_unicode(Pointer<hb_buffer_t> buffer, Pointer<Char> buf, int buf_len, Pointer<Pointer<Char>> end_ptr, hb_buffer_serialize_format_t format) Darthb_bool_t
hb_buffer_destroy(Pointer<hb_buffer_t> buffer) → void
hb_buffer_diff(Pointer<hb_buffer_t> buffer, Pointer<hb_buffer_t> reference, Darthb_codepoint_t dottedcircle_glyph, int position_fuzz) hb_buffer_diff_flags_t
hb_buffer_get_cluster_level(Pointer<hb_buffer_t> buffer) hb_buffer_cluster_level_t
hb_buffer_get_content_type(Pointer<hb_buffer_t> buffer) hb_buffer_content_type_t
hb_buffer_get_direction(Pointer<hb_buffer_t> buffer) hb_direction_t
hb_buffer_get_empty() Pointer<hb_buffer_t>
hb_buffer_get_flags(Pointer<hb_buffer_t> buffer) hb_buffer_flags_t
hb_buffer_get_glyph_infos(Pointer<hb_buffer_t> buffer, Pointer<UnsignedInt> length) Pointer<hb_glyph_info_t>
Getting glyphs out of the buffer
hb_buffer_get_glyph_positions(Pointer<hb_buffer_t> buffer, Pointer<UnsignedInt> length) Pointer<hb_glyph_position_t>
hb_buffer_get_invisible_glyph(Pointer<hb_buffer_t> buffer) int
hb_buffer_get_language(Pointer<hb_buffer_t> buffer) hb_language_t
hb_buffer_get_length(Pointer<hb_buffer_t> buffer) int
hb_buffer_get_not_found_glyph(Pointer<hb_buffer_t> buffer) int
hb_buffer_get_not_found_variation_selector_glyph(Pointer<hb_buffer_t> buffer) int
hb_buffer_get_random_state(Pointer<hb_buffer_t> buffer) int
hb_buffer_get_replacement_codepoint(Pointer<hb_buffer_t> buffer) int
hb_buffer_get_script(Pointer<hb_buffer_t> buffer) hb_script_t
hb_buffer_get_segment_properties(Pointer<hb_buffer_t> buffer, Pointer<hb_segment_properties_t> props) → void
hb_buffer_get_unicode_funcs(Pointer<hb_buffer_t> buffer) Pointer<hb_unicode_funcs_t>
hb_buffer_get_user_data(Pointer<hb_buffer_t> buffer, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_buffer_guess_segment_properties(Pointer<hb_buffer_t> buffer) → void
hb_buffer_has_positions(Pointer<hb_buffer_t> buffer) int
hb_buffer_normalize_glyphs(Pointer<hb_buffer_t> buffer) → void
hb_buffer_pre_allocate(Pointer<hb_buffer_t> buffer, int size) int
hb_buffer_reference(Pointer<hb_buffer_t> buffer) Pointer<hb_buffer_t>
hb_buffer_reset(Pointer<hb_buffer_t> buffer) → void
hb_buffer_reverse(Pointer<hb_buffer_t> buffer) → void
hb_buffer_reverse_clusters(Pointer<hb_buffer_t> buffer) → void
hb_buffer_reverse_range(Pointer<hb_buffer_t> buffer, int start, int end) → void
hb_buffer_serialize(Pointer<hb_buffer_t> buffer, int start, int end, Pointer<Char> buf, int buf_size, Pointer<UnsignedInt> buf_consumed, Pointer<hb_font_t> font, hb_buffer_serialize_format_t format, hb_buffer_serialize_flags_t flags) int
hb_buffer_serialize_format_from_string(Pointer<Char> str, int len) hb_buffer_serialize_format_t
hb_buffer_serialize_format_to_string(hb_buffer_serialize_format_t format) Pointer<Char>
hb_buffer_serialize_glyphs(Pointer<hb_buffer_t> buffer, int start, int end, Pointer<Char> buf, int buf_size, Pointer<UnsignedInt> buf_consumed, Pointer<hb_font_t> font, hb_buffer_serialize_format_t format, hb_buffer_serialize_flags_t flags) int
hb_buffer_serialize_list_formats() Pointer<Pointer<Char>>
hb_buffer_serialize_unicode(Pointer<hb_buffer_t> buffer, int start, int end, Pointer<Char> buf, int buf_size, Pointer<UnsignedInt> buf_consumed, hb_buffer_serialize_format_t format, hb_buffer_serialize_flags_t flags) int
hb_buffer_set_cluster_level(Pointer<hb_buffer_t> buffer, hb_buffer_cluster_level_t cluster_level) → void
hb_buffer_set_content_type(Pointer<hb_buffer_t> buffer, hb_buffer_content_type_t content_type) → void
hb_buffer_set_direction(Pointer<hb_buffer_t> buffer, hb_direction_t direction) → void
hb_buffer_set_flags(Pointer<hb_buffer_t> buffer, hb_buffer_flags_t flags) → void
hb_buffer_set_invisible_glyph(Pointer<hb_buffer_t> buffer, int invisible) → void
hb_buffer_set_language(Pointer<hb_buffer_t> buffer, hb_language_t language) → void
hb_buffer_set_length(Pointer<hb_buffer_t> buffer, int length) int
hb_buffer_set_message_func(Pointer<hb_buffer_t> buffer, hb_buffer_message_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_buffer_set_not_found_glyph(Pointer<hb_buffer_t> buffer, int not_found) → void
hb_buffer_set_not_found_variation_selector_glyph(Pointer<hb_buffer_t> buffer, int not_found_variation_selector) → void
hb_buffer_set_random_state(Pointer<hb_buffer_t> buffer, int state) → void
hb_buffer_set_replacement_codepoint(Pointer<hb_buffer_t> buffer, int replacement) → void
hb_buffer_set_script(Pointer<hb_buffer_t> buffer, hb_script_t script) → void
hb_buffer_set_segment_properties(Pointer<hb_buffer_t> buffer, Pointer<hb_segment_properties_t> props) → void
hb_buffer_set_unicode_funcs(Pointer<hb_buffer_t> buffer, Pointer<hb_unicode_funcs_t> unicode_funcs) → void
hb_buffer_set_user_data(Pointer<hb_buffer_t> buffer, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_calloc(int nmemb, int size) Pointer<Void>
hb_color_get_alpha(int color) int
hb_color_get_blue(int color) int
hb_color_get_green(int color) int
hb_color_get_red(int color) int
hb_color_line_get_color_stops(Pointer<hb_color_line_t> color_line, int start, Pointer<UnsignedInt> count, Pointer<hb_color_stop_t> color_stops) int
hb_color_line_get_extend(Pointer<hb_color_line_t> color_line) hb_paint_extend_t
hb_direction_from_string(Pointer<Char> str, int len) hb_direction_t
hb_direction_to_string(hb_direction_t direction) Pointer<Char>
hb_draw_circle(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, double cx, double cy, double r, double stroke_width) → void
hb_draw_close_path(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st) → void
hb_draw_cubic_to(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, double control1_x, double control1_y, double control2_x, double control2_y, double to_x, double to_y) → void
hb_draw_funcs_create() Pointer<hb_draw_funcs_t>
hb_draw_funcs_destroy(Pointer<hb_draw_funcs_t> dfuncs) → void
hb_draw_funcs_get_empty() Pointer<hb_draw_funcs_t>
hb_draw_funcs_get_user_data(Pointer<hb_draw_funcs_t> dfuncs, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_draw_funcs_is_immutable(Pointer<hb_draw_funcs_t> dfuncs) int
hb_draw_funcs_make_immutable(Pointer<hb_draw_funcs_t> dfuncs) → void
hb_draw_funcs_reference(Pointer<hb_draw_funcs_t> dfuncs) Pointer<hb_draw_funcs_t>
hb_draw_funcs_set_close_path_func(Pointer<hb_draw_funcs_t> dfuncs, hb_draw_close_path_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_draw_funcs_set_close_path_func: @dfuncs: draw functions object @func: (closure user_data) (destroy destroy) (scope notified): close-path callback @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_draw_funcs_set_cubic_to_func(Pointer<hb_draw_funcs_t> dfuncs, hb_draw_cubic_to_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_draw_funcs_set_cubic_to_func: @dfuncs: draw functions @func: (closure user_data) (destroy destroy) (scope notified): cubic-to callback @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_draw_funcs_set_line_to_func(Pointer<hb_draw_funcs_t> dfuncs, hb_draw_line_to_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_draw_funcs_set_line_to_func: @dfuncs: draw functions object @func: (closure user_data) (destroy destroy) (scope notified): line-to callback @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_draw_funcs_set_move_to_func(Pointer<hb_draw_funcs_t> dfuncs, hb_draw_move_to_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_draw_funcs_set_move_to_func: @dfuncs: draw functions object @func: (closure user_data) (destroy destroy) (scope notified): move-to callback @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_draw_funcs_set_quadratic_to_func(Pointer<hb_draw_funcs_t> dfuncs, hb_draw_quadratic_to_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_draw_funcs_set_quadratic_to_func: @dfuncs: draw functions object @func: (closure user_data) (destroy destroy) (scope notified): quadratic-to callback @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_draw_funcs_set_user_data(Pointer<hb_draw_funcs_t> dfuncs, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_draw_line(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, double x0, double y0, double w0, double x1, double y1, double w1, hb_draw_line_cap_t cap) → void
hb_draw_line_to(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, double to_x, double to_y) → void
hb_draw_move_to(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, double to_x, double to_y) → void
hb_draw_quadratic_to(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, double control_x, double control_y, double to_x, double to_y) → void
hb_draw_rectangle(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, double x, double y, double w, double h, double stroke_width) → void
hb_face_builder_add_table(Pointer<hb_face_t> face, int tag, Pointer<hb_blob_t> blob) int
hb_face_builder_create() Pointer<hb_face_t>
Builder face.
hb_face_builder_sort_tables(Pointer<hb_face_t> face, Pointer<hb_codepoint_t> tags) → void
hb_face_collect_nominal_glyph_mapping(Pointer<hb_face_t> face, Pointer<hb_map_t> mapping, Pointer<hb_set_t> unicodes) → void
hb_face_collect_unicodes(Pointer<hb_face_t> face, Pointer<hb_set_t> out) → void
Character set.
hb_face_collect_variation_selectors(Pointer<hb_face_t> face, Pointer<hb_set_t> out) → void
hb_face_collect_variation_unicodes(Pointer<hb_face_t> face, int variation_selector, Pointer<hb_set_t> out) → void
hb_face_count(Pointer<hb_blob_t> blob) int
hb_face_create(Pointer<hb_blob_t> blob, int index) Pointer<hb_face_t>
hb_face_create_for_tables(hb_reference_table_func_t reference_table_func, Pointer<Void> user_data, hb_destroy_func_t destroy) Pointer<hb_face_t>
calls destroy() when not needing user_data anymore
hb_face_create_from_file_or_fail(Pointer<Char> file_name, int index) Pointer<hb_face_t>
hb_face_create_from_file_or_fail_using(Pointer<Char> file_name, int index, Pointer<Char> loader_name) Pointer<hb_face_t>
hb_face_create_or_fail(Pointer<hb_blob_t> blob, int index) Pointer<hb_face_t>
hb_face_create_or_fail_using(Pointer<hb_blob_t> blob, int index, Pointer<Char> loader_name) Pointer<hb_face_t>
hb_face_destroy(Pointer<hb_face_t> face) → void
hb_face_get_empty() Pointer<hb_face_t>
hb_face_get_glyph_count(Pointer<hb_face_t> face) int
hb_face_get_index(Pointer<hb_face_t> face) int
hb_face_get_table_tags(Pointer<hb_face_t> face, int start_offset, Pointer<UnsignedInt> table_count, Pointer<hb_codepoint_t> table_tags) int
hb_face_get_upem(Pointer<hb_face_t> face) int
hb_face_get_user_data(Pointer<hb_face_t> face, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_face_is_immutable(Pointer<hb_face_t> face) int
hb_face_list_loaders() Pointer<Pointer<Char>>
hb_face_make_immutable(Pointer<hb_face_t> face) → void
hb_face_reference(Pointer<hb_face_t> face) Pointer<hb_face_t>
hb_face_reference_blob(Pointer<hb_face_t> face) Pointer<hb_blob_t>
hb_face_reference_table(Pointer<hb_face_t> face, int tag) Pointer<hb_blob_t>
hb_face_set_get_table_tags_func(Pointer<hb_face_t> face, hb_get_table_tags_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_face_set_glyph_count(Pointer<hb_face_t> face, int glyph_count) → void
hb_face_set_index(Pointer<hb_face_t> face, int index) → void
hb_face_set_upem(Pointer<hb_face_t> face, int upem) → void
hb_face_set_user_data(Pointer<hb_face_t> face, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_feature_from_string(Pointer<Char> str, int len, Pointer<hb_feature_t> feature) int
hb_feature_to_string(Pointer<hb_feature_t> feature, Pointer<Char> buf, int size) → void
hb_font_add_glyph_origin_for_direction(Pointer<hb_font_t> font, Darthb_codepoint_t glyph, hb_direction_t direction, Pointer<hb_position_t> x, Pointer<hb_position_t> y) → void
hb_font_changed(Pointer<hb_font_t> font) → void
hb_font_create(Pointer<hb_face_t> face) Pointer<hb_font_t>
Fonts are very light-weight objects
hb_font_create_sub_font(Pointer<hb_font_t> parent) Pointer<hb_font_t>
hb_font_destroy(Pointer<hb_font_t> font) → void
hb_font_draw_glyph(Pointer<hb_font_t> font, int glyph, Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data) → void
Older alias for hb_font_draw_glyph_or_fail() with no return value.
hb_font_draw_glyph_or_fail(Pointer<hb_font_t> font, int glyph, Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data) int
hb_font_funcs_create() Pointer<hb_font_funcs_t>
hb_font_funcs_destroy(Pointer<hb_font_funcs_t> ffuncs) → void
hb_font_funcs_get_empty() Pointer<hb_font_funcs_t>
hb_font_funcs_get_user_data(Pointer<hb_font_funcs_t> ffuncs, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_font_funcs_is_immutable(Pointer<hb_font_funcs_t> ffuncs) int
hb_font_funcs_make_immutable(Pointer<hb_font_funcs_t> ffuncs) → void
hb_font_funcs_reference(Pointer<hb_font_funcs_t> ffuncs) Pointer<hb_font_funcs_t>
hb_font_funcs_set_draw_glyph_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_draw_glyph_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_draw_glyph_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_draw_glyph_or_fail_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_draw_glyph_or_fail_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_draw_glyph_or_fail_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_font_h_extents_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_font_h_extents_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_font_h_extents_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_font_v_extents_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_font_v_extents_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_font_v_extents_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_contour_point_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_contour_point_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_contour_point_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_extents_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_extents_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_extents_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_from_name_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_from_name_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_from_name_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_h_advance_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_h_advance_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_h_advance_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_h_advances_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_h_advances_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_h_advances_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_h_kerning_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_h_kerning_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_h_kerning_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_h_origin_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_h_origin_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_h_origin_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_h_origins_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_h_origins_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_h_origins_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_name_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_name_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_name_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_shape_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_shape_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_shape_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_v_advance_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_v_advance_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_v_advance_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_v_advances_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_v_advances_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_v_advances_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_v_kerning_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_v_kerning_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_v_kerning_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_v_origin_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_v_origin_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_v_origin_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_glyph_v_origins_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_glyph_v_origins_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_glyph_v_origins_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_nominal_glyph_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_nominal_glyph_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_nominal_glyph_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_nominal_glyphs_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_nominal_glyphs_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_nominal_glyphs_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_funcs_set_paint_glyph_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_paint_glyph_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_paint_glyph_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is no longer needed
hb_font_funcs_set_paint_glyph_or_fail_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_paint_glyph_or_fail_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_paint_glyph_or_fail_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is no longer needed
hb_font_funcs_set_user_data(Pointer<hb_font_funcs_t> ffuncs, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_font_funcs_set_variation_glyph_func(Pointer<hb_font_funcs_t> ffuncs, hb_font_get_variation_glyph_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_font_funcs_set_variation_glyph_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_font_get_empty() Pointer<hb_font_t>
hb_font_get_extents_for_direction(Pointer<hb_font_t> font, hb_direction_t direction, Pointer<hb_font_extents_t> extents) → void
hb_font_get_face(Pointer<hb_font_t> font) Pointer<hb_face_t>
hb_font_get_glyph(Pointer<hb_font_t> font, int unicode, int variation_selector, Pointer<hb_codepoint_t> glyph) int
Calls either hb_font_get_nominal_glyph() if variation_selector is 0, otherwise calls hb_font_get_variation_glyph().
hb_font_get_glyph_advance_for_direction(Pointer<hb_font_t> font, Darthb_codepoint_t glyph, hb_direction_t direction, Pointer<hb_position_t> x, Pointer<hb_position_t> y) → void
hb_font_get_glyph_advances_for_direction(Pointer<hb_font_t> font, hb_direction_t direction, int count, Pointer<hb_codepoint_t> first_glyph, int glyph_stride, Pointer<hb_position_t> first_advance, int advance_stride) → void
hb_font_get_glyph_contour_point(Pointer<hb_font_t> font, int glyph, int point_index, Pointer<hb_position_t> x, Pointer<hb_position_t> y) int
hb_font_get_glyph_contour_point_for_origin(Pointer<hb_font_t> font, Darthb_codepoint_t glyph, int point_index, hb_direction_t direction, Pointer<hb_position_t> x, Pointer<hb_position_t> y) Darthb_bool_t
hb_font_get_glyph_extents(Pointer<hb_font_t> font, int glyph, Pointer<hb_glyph_extents_t> extents) int
hb_font_get_glyph_extents_for_origin(Pointer<hb_font_t> font, Darthb_codepoint_t glyph, hb_direction_t direction, Pointer<hb_glyph_extents_t> extents) Darthb_bool_t
hb_font_get_glyph_from_name(Pointer<hb_font_t> font, Pointer<Char> name, int len, Pointer<hb_codepoint_t> glyph) int
hb_font_get_glyph_h_advance(Pointer<hb_font_t> font, int glyph) int
hb_font_get_glyph_h_advances(Pointer<hb_font_t> font, int count, Pointer<hb_codepoint_t> first_glyph, int glyph_stride, Pointer<hb_position_t> first_advance, int advance_stride) → void
hb_font_get_glyph_h_kerning(Pointer<hb_font_t> font, int left_glyph, int right_glyph) int
hb_font_get_glyph_h_origin(Pointer<hb_font_t> font, int glyph, Pointer<hb_position_t> x, Pointer<hb_position_t> y) int
hb_font_get_glyph_h_origins(Pointer<hb_font_t> font, int count, Pointer<hb_codepoint_t> first_glyph, int glyph_stride, Pointer<hb_position_t> first_x, int x_stride, Pointer<hb_position_t> first_y, int y_stride) int
hb_font_get_glyph_kerning_for_direction(Pointer<hb_font_t> font, Darthb_codepoint_t first_glyph, Darthb_codepoint_t second_glyph, hb_direction_t direction, Pointer<hb_position_t> x, Pointer<hb_position_t> y) → void
hb_font_get_glyph_name(Pointer<hb_font_t> font, int glyph, Pointer<Char> name, int size) int
hb_font_get_glyph_origin_for_direction(Pointer<hb_font_t> font, Darthb_codepoint_t glyph, hb_direction_t direction, Pointer<hb_position_t> x, Pointer<hb_position_t> y) → void
hb_font_get_glyph_shape(Pointer<hb_font_t> font, int glyph, Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data) → void
hb_font_get_glyph_v_advance(Pointer<hb_font_t> font, int glyph) int
hb_font_get_glyph_v_advances(Pointer<hb_font_t> font, int count, Pointer<hb_codepoint_t> first_glyph, int glyph_stride, Pointer<hb_position_t> first_advance, int advance_stride) → void
hb_font_get_glyph_v_kerning(Pointer<hb_font_t> font, int top_glyph, int bottom_glyph) int
hb_font_get_glyph_v_origin(Pointer<hb_font_t> font, int glyph, Pointer<hb_position_t> x, Pointer<hb_position_t> y) int
hb_font_get_glyph_v_origins(Pointer<hb_font_t> font, int count, Pointer<hb_codepoint_t> first_glyph, int glyph_stride, Pointer<hb_position_t> first_x, int x_stride, Pointer<hb_position_t> first_y, int y_stride) int
hb_font_get_h_extents(Pointer<hb_font_t> font, Pointer<hb_font_extents_t> extents) int
func dispatch
hb_font_get_nominal_glyph(Pointer<hb_font_t> font, int unicode, Pointer<hb_codepoint_t> glyph) int
hb_font_get_nominal_glyphs(Pointer<hb_font_t> font, int count, Pointer<hb_codepoint_t> first_unicode, int unicode_stride, Pointer<hb_codepoint_t> first_glyph, int glyph_stride) int
hb_font_get_parent(Pointer<hb_font_t> font) Pointer<hb_font_t>
hb_font_get_ppem(Pointer<hb_font_t> font, Pointer<UnsignedInt> x_ppem, Pointer<UnsignedInt> y_ppem) → void
hb_font_get_ptem(Pointer<hb_font_t> font) double
hb_font_get_scale(Pointer<hb_font_t> font, Pointer<Int> x_scale, Pointer<Int> y_scale) → void
hb_font_get_serial(Pointer<hb_font_t> font) int
hb_font_get_synthetic_bold(Pointer<hb_font_t> font, Pointer<Float> x_embolden, Pointer<Float> y_embolden, Pointer<Int> in_place) → void
hb_font_get_synthetic_slant(Pointer<hb_font_t> font) double
hb_font_get_user_data(Pointer<hb_font_t> font, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_font_get_v_extents(Pointer<hb_font_t> font, Pointer<hb_font_extents_t> extents) int
hb_font_get_var_coords_design(Pointer<hb_font_t> font, Pointer<UnsignedInt> length) Pointer<Float>
hb_font_get_var_coords_normalized(Pointer<hb_font_t> font, Pointer<UnsignedInt> length) Pointer<Int>
hb_font_get_var_named_instance(Pointer<hb_font_t> font) int
hb_font_get_variation_glyph(Pointer<hb_font_t> font, int unicode, int variation_selector, Pointer<hb_codepoint_t> glyph) int
hb_font_glyph_from_string(Pointer<hb_font_t> font, Pointer<Char> s, int len, Pointer<hb_codepoint_t> glyph) int
Parses gidDDD and uniUUUU strings automatically.
hb_font_glyph_to_string(Pointer<hb_font_t> font, int glyph, Pointer<Char> s, int size) → void
Generates gidDDD if glyph has no name.
hb_font_is_immutable(Pointer<hb_font_t> font) int
hb_font_is_synthetic(Pointer<hb_font_t> font) int
hb_font_list_funcs() Pointer<Pointer<Char>>
hb_font_make_immutable(Pointer<hb_font_t> font) → void
hb_font_paint_glyph(Pointer<hb_font_t> font, int glyph, Pointer<hb_paint_funcs_t> pfuncs, Pointer<Void> paint_data, int palette_index, int foreground) → void
Paints color glyph; if failed, draws outline glyph.
hb_font_paint_glyph_or_fail(Pointer<hb_font_t> font, int glyph, Pointer<hb_paint_funcs_t> pfuncs, Pointer<Void> paint_data, int palette_index, int foreground) int
hb_font_reference(Pointer<hb_font_t> font) Pointer<hb_font_t>
hb_font_set_face(Pointer<hb_font_t> font, Pointer<hb_face_t> face) → void
hb_font_set_funcs(Pointer<hb_font_t> font, Pointer<hb_font_funcs_t> klass, Pointer<Void> font_data, hb_destroy_func_t destroy) → void
hb_font_set_funcs_data(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_destroy_func_t destroy) → void
Be very careful with this function!
hb_font_set_funcs_using(Pointer<hb_font_t> font, Pointer<Char> name) int
hb_font_set_parent(Pointer<hb_font_t> font, Pointer<hb_font_t> parent) → void
hb_font_set_ppem(Pointer<hb_font_t> font, int x_ppem, int y_ppem) → void
A zero value means "no hinting in that direction"
hb_font_set_ptem(Pointer<hb_font_t> font, double ptem) → void
Point size per EM. Used for optical-sizing in CoreText. A value of zero means "not set".
hb_font_set_scale(Pointer<hb_font_t> font, int x_scale, int y_scale) → void
hb_font_set_synthetic_bold(Pointer<hb_font_t> font, double x_embolden, double y_embolden, int in_place) → void
hb_font_set_synthetic_slant(Pointer<hb_font_t> font, double slant) → void
hb_font_set_user_data(Pointer<hb_font_t> font, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_font_set_var_coords_design(Pointer<hb_font_t> font, Pointer<Float> coords, int coords_length) → void
hb_font_set_var_coords_normalized(Pointer<hb_font_t> font, Pointer<Int> coords, int coords_length) → void
hb_font_set_var_named_instance(Pointer<hb_font_t> font, int instance_index) → void
hb_font_set_variation(Pointer<hb_font_t> font, int tag, double value) → void
hb_font_set_variations(Pointer<hb_font_t> font, Pointer<hb_variation_t> variations, int variations_length) → void
hb_font_subtract_glyph_origin_for_direction(Pointer<hb_font_t> font, Darthb_codepoint_t glyph, hb_direction_t direction, Pointer<hb_position_t> x, Pointer<hb_position_t> y) → void
hb_free(Pointer<Void> ptr) → void
hb_glyph_info_get_glyph_flags(Pointer<hb_glyph_info_t> info) hb_glyph_flags_t
hb_language_from_string(Pointer<Char> str, int len) hb_language_t
hb_language_get_default() hb_language_t
hb_language_matches(hb_language_t language, hb_language_t specific) int
hb_language_to_string(hb_language_t language) Pointer<Char>
hb_malloc(int size) Pointer<Void>
Not of much use to clients.
hb_map_allocation_successful(Pointer<hb_map_t> map) int
Returns false if allocation has failed before
hb_map_clear(Pointer<hb_map_t> map) → void
hb_map_copy(Pointer<hb_map_t> map) Pointer<hb_map_t>
hb_map_create() Pointer<hb_map_t>
hb_map_del(Pointer<hb_map_t> map, int key) → void
hb_map_destroy(Pointer<hb_map_t> map) → void
hb_map_get(Pointer<hb_map_t> map, int key) int
hb_map_get_empty() Pointer<hb_map_t>
hb_map_get_population(Pointer<hb_map_t> map) int
hb_map_get_user_data(Pointer<hb_map_t> map, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_map_has(Pointer<hb_map_t> map, int key) int
hb_map_hash(Pointer<hb_map_t> map) int
hb_map_is_empty(Pointer<hb_map_t> map) int
hb_map_is_equal(Pointer<hb_map_t> map, Pointer<hb_map_t> other) int
hb_map_keys(Pointer<hb_map_t> map, Pointer<hb_set_t> keys) → void
hb_map_next(Pointer<hb_map_t> map, Pointer<Int> idx, Pointer<hb_codepoint_t> key, Pointer<hb_codepoint_t> value) int
Pass -1 in for idx to get started.
hb_map_reference(Pointer<hb_map_t> map) Pointer<hb_map_t>
hb_map_set(Pointer<hb_map_t> map, int key, int value) → void
hb_map_set_user_data(Pointer<hb_map_t> map, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_map_update(Pointer<hb_map_t> map, Pointer<hb_map_t> other) → void
hb_map_values(Pointer<hb_map_t> map, Pointer<hb_set_t> values) → void
hb_ot_color_get_svg_document_count(Pointer<hb_face_t> face) int
hb_ot_color_get_svg_document_glyph_range(Pointer<hb_face_t> face, int svg_document_index, Pointer<hb_codepoint_t> start_glyph_id, Pointer<hb_codepoint_t> end_glyph_id) int
hb_ot_color_glyph_get_layers(Pointer<hb_face_t> face, int glyph, int start_offset, Pointer<UnsignedInt> layer_count, Pointer<hb_ot_color_layer_t> layers) int
hb_ot_color_glyph_get_svg_document_index(Pointer<hb_face_t> face, int glyph, Pointer<UnsignedInt> svg_document_index) int
hb_ot_color_glyph_has_paint(Pointer<hb_face_t> face, int glyph) int
hb_ot_color_glyph_reference_png(Pointer<hb_font_t> font, int glyph) Pointer<hb_blob_t>
hb_ot_color_glyph_reference_svg(Pointer<hb_face_t> face, int glyph) Pointer<hb_blob_t>
hb_ot_color_has_layers(Pointer<hb_face_t> face) int
Color layers.
hb_ot_color_has_paint(Pointer<hb_face_t> face) int
COLRv1
hb_ot_color_has_palettes(Pointer<hb_face_t> face) int
Color palettes.
hb_ot_color_has_png(Pointer<hb_face_t> face) int
PNG: CBDT or sbix
hb_ot_color_has_svg(Pointer<hb_face_t> face) int
SVG
hb_ot_color_palette_color_get_name_id(Pointer<hb_face_t> face, int color_index) int
hb_ot_color_palette_get_colors(Pointer<hb_face_t> face, int palette_index, int start_offset, Pointer<UnsignedInt> color_count, Pointer<hb_codepoint_t> colors) int
hb_ot_color_palette_get_count(Pointer<hb_face_t> face) int
hb_ot_color_palette_get_flags(Pointer<hb_face_t> face, int palette_index) hb_ot_color_palette_flags_t
hb_ot_color_palette_get_name_id(Pointer<hb_face_t> face, int palette_index) int
hb_ot_font_set_funcs(Pointer<hb_font_t> font) → void
hb_ot_layout_collect_features(Pointer<hb_face_t> face, int table_tag, Pointer<hb_codepoint_t> scripts, Pointer<hb_codepoint_t> languages, Pointer<hb_codepoint_t> features, Pointer<hb_set_t> feature_indexes) → void
hb_ot_layout_collect_features_map(Pointer<hb_face_t> face, int table_tag, int script_index, int language_index, Pointer<hb_map_t> feature_map) → void
hb_ot_layout_collect_lookups(Pointer<hb_face_t> face, int table_tag, Pointer<hb_codepoint_t> scripts, Pointer<hb_codepoint_t> languages, Pointer<hb_codepoint_t> features, Pointer<hb_set_t> lookup_indexes) → void
hb_ot_layout_feature_get_characters(Pointer<hb_face_t> face, int table_tag, int feature_index, int start_offset, Pointer<UnsignedInt> char_count, Pointer<hb_codepoint_t> characters) int
hb_ot_layout_feature_get_lookups(Pointer<hb_face_t> face, int table_tag, int feature_index, int start_offset, Pointer<UnsignedInt> lookup_count, Pointer<UnsignedInt> lookup_indexes) int
hb_ot_layout_feature_get_name_ids(Pointer<hb_face_t> face, int table_tag, int feature_index, Pointer<UnsignedInt> label_id, Pointer<UnsignedInt> tooltip_id, Pointer<UnsignedInt> sample_id, Pointer<UnsignedInt> num_named_parameters, Pointer<UnsignedInt> first_param_id) int
GSUB/GPOS
hb_ot_layout_feature_with_variations_get_lookups(Pointer<hb_face_t> face, int table_tag, int feature_index, int variations_index, int start_offset, Pointer<UnsignedInt> lookup_count, Pointer<UnsignedInt> lookup_indexes) int
hb_ot_layout_get_attach_points(Pointer<hb_face_t> face, int glyph, int start_offset, Pointer<UnsignedInt> point_count, Pointer<UnsignedInt> point_array) int
Not that useful. Provides list of attach points for a glyph that a client may want to cache
hb_ot_layout_get_baseline(Pointer<hb_font_t> font, hb_ot_layout_baseline_tag_t baseline_tag, hb_direction_t direction, Darthb_tag_t script_tag, Darthb_tag_t language_tag, Pointer<hb_position_t> coord) Darthb_bool_t
hb_ot_layout_get_baseline2(Pointer<hb_font_t> font, hb_ot_layout_baseline_tag_t baseline_tag, hb_direction_t direction, hb_script_t script, hb_language_t language, Pointer<hb_position_t> coord) Darthb_bool_t
hb_ot_layout_get_baseline_with_fallback(Pointer<hb_font_t> font, hb_ot_layout_baseline_tag_t baseline_tag, hb_direction_t direction, Darthb_tag_t script_tag, Darthb_tag_t language_tag, Pointer<hb_position_t> coord) → void
hb_ot_layout_get_baseline_with_fallback2(Pointer<hb_font_t> font, hb_ot_layout_baseline_tag_t baseline_tag, hb_direction_t direction, hb_script_t script, hb_language_t language, Pointer<hb_position_t> coord) → void
hb_ot_layout_get_font_extents(Pointer<hb_font_t> font, hb_direction_t direction, Darthb_tag_t script_tag, Darthb_tag_t language_tag, Pointer<hb_font_extents_t> extents) Darthb_bool_t
hb_ot_layout_get_font_extents2(Pointer<hb_font_t> font, hb_direction_t direction, hb_script_t script, hb_language_t language, Pointer<hb_font_extents_t> extents) Darthb_bool_t
hb_ot_layout_get_glyph_class(Pointer<hb_face_t> face, Darthb_codepoint_t glyph) hb_ot_layout_glyph_class_t
hb_ot_layout_get_glyphs_in_class(Pointer<hb_face_t> face, hb_ot_layout_glyph_class_t klass, Pointer<hb_set_t> glyphs) → void
hb_ot_layout_get_horizontal_baseline_tag_for_script(hb_script_t script) hb_ot_layout_baseline_tag_t
hb_ot_layout_get_ligature_carets(Pointer<hb_font_t> font, hb_direction_t direction, Darthb_codepoint_t glyph, int start_offset, Pointer<UnsignedInt> caret_count, Pointer<hb_position_t> caret_array) int
hb_ot_layout_get_size_params(Pointer<hb_face_t> face, Pointer<UnsignedInt> design_size, Pointer<UnsignedInt> subfamily_id, Pointer<UnsignedInt> subfamily_name_id, Pointer<UnsignedInt> range_start, Pointer<UnsignedInt> range_end) int
Optical 'size' feature info. Returns true if found. https://docs.microsoft.com/en-us/typography/opentype/spec/features_pt#size
hb_ot_layout_has_glyph_classes(Pointer<hb_face_t> face) int
GDEF
hb_ot_layout_has_positioning(Pointer<hb_face_t> face) int
GPOS
hb_ot_layout_has_substitution(Pointer<hb_face_t> face) int
GSUB
hb_ot_layout_language_find_feature(Pointer<hb_face_t> face, int table_tag, int script_index, int language_index, int feature_tag, Pointer<UnsignedInt> feature_index) int
hb_ot_layout_language_get_feature_indexes(Pointer<hb_face_t> face, int table_tag, int script_index, int language_index, int start_offset, Pointer<UnsignedInt> feature_count, Pointer<UnsignedInt> feature_indexes) int
hb_ot_layout_language_get_feature_tags(Pointer<hb_face_t> face, int table_tag, int script_index, int language_index, int start_offset, Pointer<UnsignedInt> feature_count, Pointer<hb_codepoint_t> feature_tags) int
hb_ot_layout_language_get_required_feature(Pointer<hb_face_t> face, int table_tag, int script_index, int language_index, Pointer<UnsignedInt> feature_index, Pointer<hb_codepoint_t> feature_tag) int
hb_ot_layout_language_get_required_feature_index(Pointer<hb_face_t> face, int table_tag, int script_index, int language_index, Pointer<UnsignedInt> feature_index) int
hb_ot_layout_lookup_collect_glyph_alternates(Pointer<hb_face_t> face, int lookup_index, Pointer<hb_map_t> alternate_count, Pointer<hb_map_t> alternate_glyphs) int
hb_ot_layout_lookup_collect_glyphs(Pointer<hb_face_t> face, int table_tag, int lookup_index, Pointer<hb_set_t> glyphs_before, Pointer<hb_set_t> glyphs_input, Pointer<hb_set_t> glyphs_after, Pointer<hb_set_t> glyphs_output) → void
hb_ot_layout_lookup_get_glyph_alternates(Pointer<hb_face_t> face, int lookup_index, int glyph, int start_offset, Pointer<UnsignedInt> alternate_count, Pointer<hb_codepoint_t> alternate_glyphs) int
hb_ot_layout_lookup_get_optical_bound(Pointer<hb_font_t> font, int lookup_index, hb_direction_t direction, Darthb_codepoint_t glyph) Darthb_position_t
hb_ot_layout_lookup_substitute_closure(Pointer<hb_face_t> face, int lookup_index, Pointer<hb_set_t> glyphs) → void
hb_ot_layout_lookup_would_substitute(Pointer<hb_face_t> face, int lookup_index, Pointer<hb_codepoint_t> glyphs, int glyphs_length, int zero_context) int
hb_ot_layout_lookups_substitute_closure(Pointer<hb_face_t> face, Pointer<hb_set_t> lookups, Pointer<hb_set_t> glyphs) → void
hb_ot_layout_script_find_language(Pointer<hb_face_t> face, int table_tag, int script_index, int language_tag, Pointer<UnsignedInt> language_index) int
hb_ot_layout_script_get_language_tags(Pointer<hb_face_t> face, int table_tag, int script_index, int start_offset, Pointer<UnsignedInt> language_count, Pointer<hb_codepoint_t> language_tags) int
hb_ot_layout_script_select_language(Pointer<hb_face_t> face, int table_tag, int script_index, int language_count, Pointer<hb_codepoint_t> language_tags, Pointer<UnsignedInt> language_index) int
hb_ot_layout_script_select_language2(Pointer<hb_face_t> face, int table_tag, int script_index, int language_count, Pointer<hb_codepoint_t> language_tags, Pointer<UnsignedInt> language_index, Pointer<hb_codepoint_t> chosen_language) int
hb_ot_layout_table_choose_script(Pointer<hb_face_t> face, int table_tag, Pointer<hb_codepoint_t> script_tags, Pointer<UnsignedInt> script_index, Pointer<hb_codepoint_t> chosen_script) int
Like hb_ot_layout_table_find_script, but takes zero-terminated array of scripts to test
hb_ot_layout_table_find_feature_variations(Pointer<hb_face_t> face, int table_tag, Pointer<Int> coords, int num_coords, Pointer<UnsignedInt> variations_index) int
Variations support
hb_ot_layout_table_find_script(Pointer<hb_face_t> face, int table_tag, int script_tag, Pointer<UnsignedInt> script_index) int
hb_ot_layout_table_get_feature_tags(Pointer<hb_face_t> face, int table_tag, int start_offset, Pointer<UnsignedInt> feature_count, Pointer<hb_codepoint_t> feature_tags) int
hb_ot_layout_table_get_lookup_count(Pointer<hb_face_t> face, int table_tag) int
hb_ot_layout_table_get_script_tags(Pointer<hb_face_t> face, int table_tag, int start_offset, Pointer<UnsignedInt> script_count, Pointer<hb_codepoint_t> script_tags) int
hb_ot_layout_table_select_script(Pointer<hb_face_t> face, int table_tag, int script_count, Pointer<hb_codepoint_t> script_tags, Pointer<UnsignedInt> script_index, Pointer<hb_codepoint_t> chosen_script) int
hb_ot_math_get_constant(Pointer<hb_font_t> font, hb_ot_math_constant_t constant) Darthb_position_t
hb_ot_math_get_glyph_assembly(Pointer<hb_font_t> font, Darthb_codepoint_t glyph, hb_direction_t direction, int start_offset, Pointer<UnsignedInt> parts_count, Pointer<hb_ot_math_glyph_part_t> parts, Pointer<hb_position_t> italics_correction) int
hb_ot_math_get_glyph_italics_correction(Pointer<hb_font_t> font, int glyph) int
hb_ot_math_get_glyph_kerning(Pointer<hb_font_t> font, Darthb_codepoint_t glyph, hb_ot_math_kern_t kern, Darthb_position_t correction_height) Darthb_position_t
hb_ot_math_get_glyph_kernings(Pointer<hb_font_t> font, Darthb_codepoint_t glyph, hb_ot_math_kern_t kern, int start_offset, Pointer<UnsignedInt> entries_count, Pointer<hb_ot_math_kern_entry_t> kern_entries) int
hb_ot_math_get_glyph_top_accent_attachment(Pointer<hb_font_t> font, int glyph) int
hb_ot_math_get_glyph_variants(Pointer<hb_font_t> font, Darthb_codepoint_t glyph, hb_direction_t direction, int start_offset, Pointer<UnsignedInt> variants_count, Pointer<hb_ot_math_glyph_variant_t> variants) int
hb_ot_math_get_min_connector_overlap(Pointer<hb_font_t> font, hb_direction_t direction) Darthb_position_t
hb_ot_math_has_data(Pointer<hb_face_t> face) int
Methods
hb_ot_math_is_glyph_extended_shape(Pointer<hb_face_t> face, int glyph) int
hb_ot_meta_get_entry_tags(Pointer<hb_face_t> face, int start_offset, Pointer<UnsignedInt> entries_count, Pointer<UnsignedInt> entries) int
hb_ot_meta_reference_entry(Pointer<hb_face_t> face, hb_ot_meta_tag_t meta_tag) Pointer<hb_blob_t>
hb_ot_metrics_get_position(Pointer<hb_font_t> font, hb_ot_metrics_tag_t metrics_tag, Pointer<hb_position_t> position) Darthb_bool_t
hb_ot_metrics_get_position_with_fallback(Pointer<hb_font_t> font, hb_ot_metrics_tag_t metrics_tag, Pointer<hb_position_t> position) → void
hb_ot_metrics_get_variation(Pointer<hb_font_t> font, hb_ot_metrics_tag_t metrics_tag) double
hb_ot_metrics_get_x_variation(Pointer<hb_font_t> font, hb_ot_metrics_tag_t metrics_tag) Darthb_position_t
hb_ot_metrics_get_y_variation(Pointer<hb_font_t> font, hb_ot_metrics_tag_t metrics_tag) Darthb_position_t
hb_ot_name_get_utf16(Pointer<hb_face_t> face, int name_id, hb_language_t language, Pointer<UnsignedInt> text_size, Pointer<Uint16> text) int
hb_ot_name_get_utf32(Pointer<hb_face_t> face, int name_id, hb_language_t language, Pointer<UnsignedInt> text_size, Pointer<hb_codepoint_t> text) int
hb_ot_name_get_utf8(Pointer<hb_face_t> face, int name_id, hb_language_t language, Pointer<UnsignedInt> text_size, Pointer<Char> text) int
hb_ot_name_list_names(Pointer<hb_face_t> face, Pointer<UnsignedInt> num_entries) Pointer<hb_ot_name_entry_t>
hb_ot_shape_get_buffer_format_serial() int
hb_ot_shape_glyphs_closure(Pointer<hb_font_t> font, Pointer<hb_buffer_t> buffer, Pointer<hb_feature_t> features, int num_features, Pointer<hb_set_t> glyphs) → void
TODO port to shape-plan / set.
hb_ot_shape_plan_collect_lookups(Pointer<hb_shape_plan_t> shape_plan, int table_tag, Pointer<hb_set_t> lookup_indexes) → void
hb_ot_shape_plan_get_feature_tags(Pointer<hb_shape_plan_t> shape_plan, int start_offset, Pointer<UnsignedInt> tag_count, Pointer<hb_codepoint_t> tags) int
hb_ot_tag_from_language(hb_language_t language) int
hb_ot_tag_to_language(int tag) hb_language_t
hb_ot_tag_to_script(Darthb_tag_t tag) hb_script_t
hb_ot_tags_from_script(hb_script_t script, Pointer<hb_codepoint_t> script_tag_1, Pointer<hb_codepoint_t> script_tag_2) → void
hb_ot_tags_from_script_and_language(hb_script_t script, hb_language_t language, Pointer<UnsignedInt> script_count, Pointer<hb_codepoint_t> script_tags, Pointer<UnsignedInt> language_count, Pointer<hb_codepoint_t> language_tags) → void
hb_ot_tags_to_script_and_language(int script_tag, int language_tag, Pointer<UnsignedInt> script, Pointer<hb_language_t> language) → void
hb_ot_var_find_axis(Pointer<hb_face_t> face, int axis_tag, Pointer<UnsignedInt> axis_index, Pointer<hb_ot_var_axis_t> axis_info) int
hb_ot_var_find_axis_info(Pointer<hb_face_t> face, int axis_tag, Pointer<hb_ot_var_axis_info_t> axis_info) int
hb_ot_var_get_axes(Pointer<hb_face_t> face, int start_offset, Pointer<UnsignedInt> axes_count, Pointer<hb_ot_var_axis_t> axes_array) int
hb_ot_var_get_axis_count(Pointer<hb_face_t> face) int
Variation axes.
hb_ot_var_get_axis_infos(Pointer<hb_face_t> face, int start_offset, Pointer<UnsignedInt> axes_count, Pointer<hb_ot_var_axis_info_t> axes_array) int
hb_ot_var_get_named_instance_count(Pointer<hb_face_t> face) int
Named instances.
hb_ot_var_has_data(Pointer<hb_face_t> face) int
fvar / avar
hb_ot_var_named_instance_get_design_coords(Pointer<hb_face_t> face, int instance_index, Pointer<UnsignedInt> coords_length, Pointer<Float> coords) int
hb_ot_var_named_instance_get_postscript_name_id(Pointer<hb_face_t> face, int instance_index) int
hb_ot_var_named_instance_get_subfamily_name_id(Pointer<hb_face_t> face, int instance_index) int
hb_ot_var_normalize_coords(Pointer<hb_face_t> face, int coords_length, Pointer<Float> design_coords, Pointer<Int> normalized_coords) → void
hb_ot_var_normalize_variations(Pointer<hb_face_t> face, Pointer<hb_variation_t> variations, int variations_length, Pointer<Int> coords, int coords_length) → void
Conversions.
hb_paint_color(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, int is_foreground, int color) → void
hb_paint_color_glyph(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, int glyph, Pointer<hb_font_t> font) int
hb_paint_custom_palette_color(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, int color_index, Pointer<hb_codepoint_t> color) int
hb_paint_funcs_create() Pointer<hb_paint_funcs_t>
hb_paint_funcs_destroy(Pointer<hb_paint_funcs_t> funcs) → void
hb_paint_funcs_get_empty() Pointer<hb_paint_funcs_t>
hb_paint_funcs_get_user_data(Pointer<hb_paint_funcs_t> funcs, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_paint_funcs_is_immutable(Pointer<hb_paint_funcs_t> funcs) int
hb_paint_funcs_make_immutable(Pointer<hb_paint_funcs_t> funcs) → void
hb_paint_funcs_reference(Pointer<hb_paint_funcs_t> funcs) Pointer<hb_paint_funcs_t>
hb_paint_funcs_set_color_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_color_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_color_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The paint-color callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_color_glyph_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_color_glyph_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_color_glyph_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The color-glyph callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_custom_palette_color_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_custom_palette_color_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_custom_palette_color_func: @funcs: a paint functions struct. @func: (closure user_data) (destroy destroy) (scope notified): custom-palette-color callback. @user_data: data to pass to @func. @destroy: (nullable): function to call when @user_data is no longer needed.
hb_paint_funcs_set_image_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_image_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_image_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The paint-image callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_linear_gradient_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_linear_gradient_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_linear_gradient_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The linear-gradient callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_pop_clip_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_pop_clip_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_pop_clip_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The pop-clip callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_pop_group_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_pop_group_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_pop_group_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The pop-group callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_pop_transform_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_pop_transform_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_pop_transform_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The pop-transform callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_push_clip_glyph_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_push_clip_glyph_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_push_clip_glyph_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The push-clip-glyph callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_push_clip_path_end_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_push_clip_path_end_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_push_clip_path_end_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The push-clip-path-end callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_push_clip_path_start_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_push_clip_path_start_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_push_clip_path_start_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The push-clip-path-start callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_push_clip_rectangle_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_push_clip_rectangle_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_push_clip_rectangle_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The push-clip-rectangle callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_push_group_for_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_push_group_for_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_push_group_for_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The push-group-for callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_push_group_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_push_group_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_push_group_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The push-group callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_push_transform_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_push_transform_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_push_transform_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The push-transform callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_radial_gradient_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_radial_gradient_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_radial_gradient_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The radial-gradient callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_sweep_gradient_func(Pointer<hb_paint_funcs_t> funcs, hb_paint_sweep_gradient_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_paint_funcs_set_sweep_gradient_func: @funcs: A paint functions struct @func: (closure user_data) (destroy destroy) (scope notified): The sweep-gradient callback @user_data: Data to pass to @func @destroy: (nullable): Function to call when @user_data is no longer needed
hb_paint_funcs_set_user_data(Pointer<hb_paint_funcs_t> funcs, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_paint_image(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_blob_t> image, int width, int height, int format, double slant, Pointer<hb_glyph_extents_t> extents) → void
hb_paint_linear_gradient(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_color_line_t> color_line, double x0, double y0, double x1, double y1, double x2, double y2) → void
hb_paint_normalize_color_line(Pointer<hb_color_stop_t> stops, int len, Pointer<Float> min, Pointer<Float> max) → void
hb_paint_pop_clip(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data) → void
hb_paint_pop_group(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, hb_paint_composite_mode_t mode) → void
hb_paint_pop_transform(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data) → void
hb_paint_push_clip_glyph(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, int glyph, Pointer<hb_font_t> font) → void
hb_paint_push_clip_path_end(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data) → void
hb_paint_push_clip_path_start(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<Pointer<Void>> draw_data) Pointer<hb_draw_funcs_t>
hb_paint_push_clip_rectangle(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, double xmin, double ymin, double xmax, double ymax) → void
hb_paint_push_font_transform(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_font_t> font) → void
hb_paint_push_group(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data) → void
hb_paint_push_group_for(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, hb_paint_composite_mode_t mode) → void
hb_paint_push_inverse_font_transform(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_font_t> font) → void
hb_paint_push_transform(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, double xx, double yx, double xy, double yy, double dx, double dy) → void
Manual API
hb_paint_radial_gradient(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_color_line_t> color_line, double x0, double y0, double r0, double x1, double y1, double r1) → void
hb_paint_reduce_linear_anchors(double x0, double y0, double x1, double y1, double x2, double y2, Pointer<Float> xx0, Pointer<Float> yy0, Pointer<Float> xx1, Pointer<Float> yy1) → void
Gradient helpers for paint backends.
hb_paint_sweep_gradient(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_color_line_t> color_line, double x0, double y0, double start_angle, double end_angle) → void
hb_paint_sweep_gradient_tiles(Pointer<hb_color_stop_t> stops, int n_stops, hb_paint_extend_t extend, double start_angle, double end_angle, hb_paint_sweep_gradient_tile_func_t emit_patch, Pointer<Void> user_data) → void
hb_realloc(Pointer<Void> ptr, int size) Pointer<Void>
hb_script_from_iso15924_tag(Darthb_tag_t tag) hb_script_t
hb_script_from_string(Pointer<Char> str, int len) hb_script_t
hb_script_get_horizontal_direction(hb_script_t script) hb_direction_t
hb_script_to_iso15924_tag(hb_script_t script) Darthb_tag_t
hb_segment_properties_equal(Pointer<hb_segment_properties_t> a, Pointer<hb_segment_properties_t> b) int
hb_segment_properties_hash(Pointer<hb_segment_properties_t> p) int
hb_segment_properties_overlay(Pointer<hb_segment_properties_t> p, Pointer<hb_segment_properties_t> src) → void
hb_set_add(Pointer<hb_set_t> set, int codepoint) → void
hb_set_add_range(Pointer<hb_set_t> set, int first, int last) → void
hb_set_add_sorted_array(Pointer<hb_set_t> set, Pointer<hb_codepoint_t> sorted_codepoints, int num_codepoints) → void
hb_set_allocation_successful(Pointer<hb_set_t> set) int
Returns false if allocation has failed before
hb_set_clear(Pointer<hb_set_t> set) → void
hb_set_copy(Pointer<hb_set_t> set) Pointer<hb_set_t>
hb_set_create() Pointer<hb_set_t>
hb_set_del(Pointer<hb_set_t> set, int codepoint) → void
hb_set_del_range(Pointer<hb_set_t> set, int first, int last) → void
hb_set_destroy(Pointer<hb_set_t> set) → void
hb_set_get_empty() Pointer<hb_set_t>
hb_set_get_max(Pointer<hb_set_t> set) int
Returns HB_SET_VALUE_INVALID if set empty.
hb_set_get_min(Pointer<hb_set_t> set) int
Returns HB_SET_VALUE_INVALID if set empty.
hb_set_get_population(Pointer<hb_set_t> set) int
hb_set_get_user_data(Pointer<hb_set_t> set, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_set_has(Pointer<hb_set_t> set, int codepoint) int
hb_set_hash(Pointer<hb_set_t> set) int
hb_set_intersect(Pointer<hb_set_t> set, Pointer<hb_set_t> other) → void
hb_set_invert(Pointer<hb_set_t> set) → void
hb_set_is_empty(Pointer<hb_set_t> set) int
hb_set_is_equal(Pointer<hb_set_t> set, Pointer<hb_set_t> other) int
hb_set_is_inverted(Pointer<hb_set_t> set) int
hb_set_is_subset(Pointer<hb_set_t> set, Pointer<hb_set_t> larger_set) int
hb_set_next(Pointer<hb_set_t> set, Pointer<hb_codepoint_t> codepoint) int
Pass HB_SET_VALUE_INVALID in to get started.
hb_set_next_many(Pointer<hb_set_t> set, int codepoint, Pointer<hb_codepoint_t> out, int size) int
Pass HB_SET_VALUE_INVALID in to get started.
hb_set_next_range(Pointer<hb_set_t> set, Pointer<hb_codepoint_t> first, Pointer<hb_codepoint_t> last) int
Pass HB_SET_VALUE_INVALID for first and last to get started.
hb_set_previous(Pointer<hb_set_t> set, Pointer<hb_codepoint_t> codepoint) int
Pass HB_SET_VALUE_INVALID in to get started.
hb_set_previous_range(Pointer<hb_set_t> set, Pointer<hb_codepoint_t> first, Pointer<hb_codepoint_t> last) int
Pass HB_SET_VALUE_INVALID for first and last to get started.
hb_set_reference(Pointer<hb_set_t> set) Pointer<hb_set_t>
hb_set_set(Pointer<hb_set_t> set, Pointer<hb_set_t> other) → void
hb_set_set_user_data(Pointer<hb_set_t> set, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_set_subtract(Pointer<hb_set_t> set, Pointer<hb_set_t> other) → void
hb_set_symmetric_difference(Pointer<hb_set_t> set, Pointer<hb_set_t> other) → void
hb_set_union(Pointer<hb_set_t> set, Pointer<hb_set_t> other) → void
hb_shape(Pointer<hb_font_t> font, Pointer<hb_buffer_t> buffer, Pointer<hb_feature_t> features, int num_features) → void
hb_shape_full(Pointer<hb_font_t> font, Pointer<hb_buffer_t> buffer, Pointer<hb_feature_t> features, int num_features, Pointer<Pointer<Char>> shaper_list) int
hb_shape_justify(Pointer<hb_font_t> font, Pointer<hb_buffer_t> buffer, Pointer<hb_feature_t> features, int num_features, Pointer<Pointer<Char>> shaper_list, double min_target_advance, double max_target_advance, Pointer<Float> advance, Pointer<hb_codepoint_t> var_tag, Pointer<Float> var_value) int
hb_shape_list_shapers() Pointer<Pointer<Char>>
hb_shape_plan_create(Pointer<hb_face_t> face, Pointer<hb_segment_properties_t> props, Pointer<hb_feature_t> user_features, int num_user_features, Pointer<Pointer<Char>> shaper_list) Pointer<hb_shape_plan_t>
hb_shape_plan_create2(Pointer<hb_face_t> face, Pointer<hb_segment_properties_t> props, Pointer<hb_feature_t> user_features, int num_user_features, Pointer<Int> coords, int num_coords, Pointer<Pointer<Char>> shaper_list) Pointer<hb_shape_plan_t>
hb_shape_plan_create_cached(Pointer<hb_face_t> face, Pointer<hb_segment_properties_t> props, Pointer<hb_feature_t> user_features, int num_user_features, Pointer<Pointer<Char>> shaper_list) Pointer<hb_shape_plan_t>
hb_shape_plan_create_cached2(Pointer<hb_face_t> face, Pointer<hb_segment_properties_t> props, Pointer<hb_feature_t> user_features, int num_user_features, Pointer<Int> coords, int num_coords, Pointer<Pointer<Char>> shaper_list) Pointer<hb_shape_plan_t>
hb_shape_plan_destroy(Pointer<hb_shape_plan_t> shape_plan) → void
hb_shape_plan_execute(Pointer<hb_shape_plan_t> shape_plan, Pointer<hb_font_t> font, Pointer<hb_buffer_t> buffer, Pointer<hb_feature_t> features, int num_features) int
hb_shape_plan_get_empty() Pointer<hb_shape_plan_t>
hb_shape_plan_get_shaper(Pointer<hb_shape_plan_t> shape_plan) Pointer<Char>
hb_shape_plan_get_user_data(Pointer<hb_shape_plan_t> shape_plan, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_shape_plan_reference(Pointer<hb_shape_plan_t> shape_plan) Pointer<hb_shape_plan_t>
hb_shape_plan_set_user_data(Pointer<hb_shape_plan_t> shape_plan, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_style_get_value(Pointer<hb_font_t> font, hb_style_tag_t style_tag) double
hb_subset_axis_range_from_string(Pointer<Char> str, int len, Pointer<Float> axis_min_value, Pointer<Float> axis_max_value, Pointer<Float> axis_def_value) int
hb_subset_axis_range_to_string(Pointer<hb_subset_input_t> input, int axis_tag, Pointer<Char> buf, int size) → void
hb_subset_cff2_get_charstring_data(Pointer<hb_face_t> face, int glyph) Pointer<hb_blob_t>
hb_subset_cff2_get_charstrings_index(Pointer<hb_face_t> face) Pointer<hb_blob_t>
hb_subset_cff_get_charstring_data(Pointer<hb_face_t> face, int glyph) Pointer<hb_blob_t>
Raw outline data access
hb_subset_cff_get_charstrings_index(Pointer<hb_face_t> face) Pointer<hb_blob_t>
hb_subset_input_create_or_fail() Pointer<hb_subset_input_t>
hb_subset_input_destroy(Pointer<hb_subset_input_t> input) → void
hb_subset_input_get_axis_range(Pointer<hb_subset_input_t> input, int axis_tag, Pointer<Float> axis_min_value, Pointer<Float> axis_max_value, Pointer<Float> axis_def_value) int
hb_subset_input_get_flags(Pointer<hb_subset_input_t> input) hb_subset_flags_t
hb_subset_input_get_user_data(Pointer<hb_subset_input_t> input, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_subset_input_glyph_set(Pointer<hb_subset_input_t> input) Pointer<hb_set_t>
hb_subset_input_keep_everything(Pointer<hb_subset_input_t> input) → void
hb_subset_input_old_to_new_glyph_mapping(Pointer<hb_subset_input_t> input) Pointer<hb_map_t>
hb_subset_input_override_name_table(Pointer<hb_subset_input_t> input, int name_id, int platform_id, int encoding_id, int language_id, Pointer<Char> name_str, int str_len) int
hb_subset_input_pin_all_axes_to_default(Pointer<hb_subset_input_t> input, Pointer<hb_face_t> face) int
hb_subset_input_pin_axis_location(Pointer<hb_subset_input_t> input, Pointer<hb_face_t> face, int axis_tag, double axis_value) int
hb_subset_input_pin_axis_to_default(Pointer<hb_subset_input_t> input, Pointer<hb_face_t> face, int axis_tag) int
hb_subset_input_reference(Pointer<hb_subset_input_t> input) Pointer<hb_subset_input_t>
hb_subset_input_set(Pointer<hb_subset_input_t> input, hb_subset_sets_t set_type) Pointer<hb_set_t>
hb_subset_input_set_axis_range(Pointer<hb_subset_input_t> input, Pointer<hb_face_t> face, int axis_tag, double axis_min_value, double axis_max_value, double axis_def_value) int
hb_subset_input_set_flags(Pointer<hb_subset_input_t> input, int value) → void
hb_subset_input_set_user_data(Pointer<hb_subset_input_t> input, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_subset_input_unicode_set(Pointer<hb_subset_input_t> input) Pointer<hb_set_t>
hb_subset_or_fail(Pointer<hb_face_t> source, Pointer<hb_subset_input_t> input) Pointer<hb_face_t>
hb_subset_plan_create_or_fail(Pointer<hb_face_t> face, Pointer<hb_subset_input_t> input) Pointer<hb_subset_plan_t>
hb_subset_plan_destroy(Pointer<hb_subset_plan_t> plan) → void
hb_subset_plan_execute_or_fail(Pointer<hb_subset_plan_t> plan) Pointer<hb_face_t>
hb_subset_plan_get_user_data(Pointer<hb_subset_plan_t> plan, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_subset_plan_new_to_old_glyph_mapping(Pointer<hb_subset_plan_t> plan) Pointer<hb_map_t>
hb_subset_plan_old_to_new_glyph_mapping(Pointer<hb_subset_plan_t> plan) Pointer<hb_map_t>
hb_subset_plan_reference(Pointer<hb_subset_plan_t> plan) Pointer<hb_subset_plan_t>
hb_subset_plan_set_user_data(Pointer<hb_subset_plan_t> plan, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_subset_plan_unicode_to_old_glyph_mapping(Pointer<hb_subset_plan_t> plan) Pointer<hb_map_t>
hb_subset_preprocess(Pointer<hb_face_t> source) Pointer<hb_face_t>
hb_tag_from_string(Pointer<Char> str, int len) int
len=-1 means str is NUL-terminated.
hb_tag_to_string(int tag, Pointer<Char> buf) → void
buf should have 4 bytes.
hb_unicode_combining_class(Pointer<hb_unicode_funcs_t> ufuncs, Darthb_codepoint_t unicode) hb_unicode_combining_class_t
hb_unicode_compose(Pointer<hb_unicode_funcs_t> ufuncs, int a, int b, Pointer<hb_codepoint_t> ab) int
hb_unicode_decompose(Pointer<hb_unicode_funcs_t> ufuncs, int ab, Pointer<hb_codepoint_t> a, Pointer<hb_codepoint_t> b) int
hb_unicode_decompose_compatibility(Pointer<hb_unicode_funcs_t> ufuncs, int u, Pointer<hb_codepoint_t> decomposed) int
hb_unicode_eastasian_width(Pointer<hb_unicode_funcs_t> ufuncs, int unicode) int
hb_unicode_eastasian_width: @ufuncs: a Unicode-function structure @unicode: The code point to query
hb_unicode_funcs_create(Pointer<hb_unicode_funcs_t> parent) Pointer<hb_unicode_funcs_t>
hb_unicode_funcs_destroy(Pointer<hb_unicode_funcs_t> ufuncs) → void
hb_unicode_funcs_get_default() Pointer<hb_unicode_funcs_t>
just give me the best implementation you've got there.
hb_unicode_funcs_get_empty() Pointer<hb_unicode_funcs_t>
hb_unicode_funcs_get_parent(Pointer<hb_unicode_funcs_t> ufuncs) Pointer<hb_unicode_funcs_t>
hb_unicode_funcs_get_user_data(Pointer<hb_unicode_funcs_t> ufuncs, Pointer<hb_user_data_key_t> key) Pointer<Void>
hb_unicode_funcs_is_immutable(Pointer<hb_unicode_funcs_t> ufuncs) int
hb_unicode_funcs_make_immutable(Pointer<hb_unicode_funcs_t> ufuncs) → void
hb_unicode_funcs_reference(Pointer<hb_unicode_funcs_t> ufuncs) Pointer<hb_unicode_funcs_t>
hb_unicode_funcs_set_combining_class_func(Pointer<hb_unicode_funcs_t> ufuncs, hb_unicode_combining_class_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_unicode_funcs_set_combining_class_func: @ufuncs: A Unicode-functions structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_unicode_funcs_set_compose_func(Pointer<hb_unicode_funcs_t> ufuncs, hb_unicode_compose_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_unicode_funcs_set_compose_func: @ufuncs: A Unicode-functions structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_unicode_funcs_set_decompose_compatibility_func(Pointer<hb_unicode_funcs_t> ufuncs, hb_unicode_decompose_compatibility_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_unicode_funcs_set_decompose_compatibility_func: @ufuncs: A Unicode-functions structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_unicode_funcs_set_decompose_func(Pointer<hb_unicode_funcs_t> ufuncs, hb_unicode_decompose_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_unicode_funcs_set_decompose_func: @ufuncs: A Unicode-functions structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_unicode_funcs_set_eastasian_width_func(Pointer<hb_unicode_funcs_t> ufuncs, hb_unicode_eastasian_width_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_unicode_funcs_set_eastasian_width_func: @ufuncs: a Unicode-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_unicode_funcs_set_general_category_func(Pointer<hb_unicode_funcs_t> ufuncs, hb_unicode_general_category_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_unicode_funcs_set_general_category_func: @ufuncs: A Unicode-functions structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_unicode_funcs_set_mirroring_func(Pointer<hb_unicode_funcs_t> ufuncs, hb_unicode_mirroring_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_unicode_funcs_set_mirroring_func: @ufuncs: A Unicode-functions structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_unicode_funcs_set_script_func(Pointer<hb_unicode_funcs_t> ufuncs, hb_unicode_script_func_t func, Pointer<Void> user_data, hb_destroy_func_t destroy) → void
hb_unicode_funcs_set_script_func: @ufuncs: A Unicode-functions structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore
hb_unicode_funcs_set_user_data(Pointer<hb_unicode_funcs_t> ufuncs, Pointer<hb_user_data_key_t> key, Pointer<Void> data, hb_destroy_func_t destroy, int replace) int
hb_unicode_general_category(Pointer<hb_unicode_funcs_t> ufuncs, Darthb_codepoint_t unicode) hb_unicode_general_category_t
hb_unicode_mirroring(Pointer<hb_unicode_funcs_t> ufuncs, int unicode) int
hb_unicode_mirroring: @ufuncs: The Unicode-functions structure @unicode: The code point to query
hb_unicode_script(Pointer<hb_unicode_funcs_t> ufuncs, Darthb_codepoint_t unicode) hb_script_t
hb_variation_from_string(Pointer<Char> str, int len, Pointer<hb_variation_t> variation) int
hb_variation_to_string(Pointer<hb_variation_t> variation, Pointer<Char> buf, int size) → void
hb_version(Pointer<UnsignedInt> major, Pointer<UnsignedInt> minor, Pointer<UnsignedInt> micro) → void
hb_version_atleast(int major, int minor, int micro) int
hb_version_string() Pointer<Char>

Typedefs

Darthb_bool_t = int
Darthb_buffer_message_func_tFunction = Darthb_bool_t Function(Pointer<hb_buffer_t> buffer, Pointer<hb_font_t> font, Pointer<Char> message, Pointer<Void> user_data)
Darthb_codepoint_t = int
Darthb_color_line_get_color_stops_func_tFunction = int Function(Pointer<hb_color_line_t> color_line, Pointer<Void> color_line_data, int start, Pointer<UnsignedInt> count, Pointer<hb_color_stop_t> color_stops, Pointer<Void> user_data)
Darthb_color_line_get_extend_func_tFunction = hb_paint_extend_t Function(Pointer<hb_color_line_t> color_line, Pointer<Void> color_line_data, Pointer<Void> user_data)
Darthb_color_t = int
Darthb_destroy_func_tFunction = void Function(Pointer<Void> ptr)
Darthb_draw_close_path_func_tFunction = void Function(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, Pointer<Void> user_data)
Darthb_draw_cubic_to_func_tFunction = void Function(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, double control1_x, double control1_y, double control2_x, double control2_y, double to_x, double to_y, Pointer<Void> user_data)
Darthb_draw_line_to_func_tFunction = void Function(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, double to_x, double to_y, Pointer<Void> user_data)
Darthb_draw_move_to_func_tFunction = void Function(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, double to_x, double to_y, Pointer<Void> user_data)
Darthb_draw_quadratic_to_func_tFunction = void Function(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, double control_x, double control_y, double to_x, double to_y, Pointer<Void> user_data)
Darthb_font_draw_glyph_func_tFunction = void Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t glyph, Pointer<hb_draw_funcs_t> draw_funcs, Pointer<Void> draw_data, Pointer<Void> user_data)
Darthb_font_draw_glyph_or_fail_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t glyph, Pointer<hb_draw_funcs_t> draw_funcs, Pointer<Void> draw_data, Pointer<Void> user_data)
Darthb_font_get_font_extents_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Pointer<hb_font_extents_t> extents, Pointer<Void> user_data)
Darthb_font_get_glyph_advance_func_tFunction = Darthb_position_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t glyph, Pointer<Void> user_data)
Darthb_font_get_glyph_advances_func_tFunction = void Function(Pointer<hb_font_t> font, Pointer<Void> font_data, int count, Pointer<hb_codepoint_t> first_glyph, int glyph_stride, Pointer<hb_position_t> first_advance, int advance_stride, Pointer<Void> user_data)
Darthb_font_get_glyph_contour_point_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t glyph, int point_index, Pointer<hb_position_t> x, Pointer<hb_position_t> y, Pointer<Void> user_data)
Darthb_font_get_glyph_extents_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t glyph, Pointer<hb_glyph_extents_t> extents, Pointer<Void> user_data)
Darthb_font_get_glyph_from_name_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Pointer<Char> name, int len, Pointer<hb_codepoint_t> glyph, Pointer<Void> user_data)
Darthb_font_get_glyph_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t unicode, Darthb_codepoint_t variation_selector, Pointer<hb_codepoint_t> glyph, Pointer<Void> user_data)
Darthb_font_get_glyph_kerning_func_tFunction = Darthb_position_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t first_glyph, Darthb_codepoint_t second_glyph, Pointer<Void> user_data)
Darthb_font_get_glyph_name_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t glyph, Pointer<Char> name, int size, Pointer<Void> user_data)
Darthb_font_get_glyph_origin_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t glyph, Pointer<hb_position_t> x, Pointer<hb_position_t> y, Pointer<Void> user_data)
Darthb_font_get_glyph_origins_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, int count, Pointer<hb_codepoint_t> first_glyph, int glyph_stride, Pointer<hb_position_t> first_x, int x_stride, Pointer<hb_position_t> first_y, int y_stride, Pointer<Void> user_data)
Darthb_font_get_glyph_shape_func_tFunction = void Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t glyph, Pointer<hb_draw_funcs_t> draw_funcs, Pointer<Void> draw_data, Pointer<Void> user_data)
Darthb_font_get_nominal_glyph_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t unicode, Pointer<hb_codepoint_t> glyph, Pointer<Void> user_data)
Darthb_font_get_nominal_glyphs_func_tFunction = int Function(Pointer<hb_font_t> font, Pointer<Void> font_data, int count, Pointer<hb_codepoint_t> first_unicode, int unicode_stride, Pointer<hb_codepoint_t> first_glyph, int glyph_stride, Pointer<Void> user_data)
Darthb_font_get_variation_glyph_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t unicode, Darthb_codepoint_t variation_selector, Pointer<hb_codepoint_t> glyph, Pointer<Void> user_data)
Darthb_font_paint_glyph_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t glyph, Pointer<hb_paint_funcs_t> paint_funcs, Pointer<Void> paint_data, int palette_index, Darthb_color_t foreground, Pointer<Void> user_data)
Darthb_font_paint_glyph_or_fail_func_tFunction = Darthb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Darthb_codepoint_t glyph, Pointer<hb_paint_funcs_t> paint_funcs, Pointer<Void> paint_data, int palette_index, Darthb_color_t foreground, Pointer<Void> user_data)
Darthb_get_table_tags_func_tFunction = int Function(Pointer<hb_face_t> face, int start_offset, Pointer<UnsignedInt> table_count, Pointer<hb_codepoint_t> table_tags, Pointer<Void> user_data)
Darthb_mask_t = int
Darthb_ot_name_id_t = int
Darthb_paint_color_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Darthb_bool_t is_foreground, Darthb_color_t color, Pointer<Void> user_data)
Darthb_paint_color_glyph_func_tFunction = Darthb_bool_t Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Darthb_codepoint_t glyph, Pointer<hb_font_t> font, Pointer<Void> user_data)
Darthb_paint_custom_palette_color_func_tFunction = Darthb_bool_t Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, int color_index, Pointer<hb_codepoint_t> color, Pointer<Void> user_data)
Darthb_paint_image_func_tFunction = Darthb_bool_t Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_blob_t> image, int width, int height, Darthb_tag_t format, double slant, Pointer<hb_glyph_extents_t> extents, Pointer<Void> user_data)
Darthb_paint_linear_gradient_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_color_line_t> color_line, double x0, double y0, double x1, double y1, double x2, double y2, Pointer<Void> user_data)
Darthb_paint_pop_clip_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<Void> user_data)
Darthb_paint_pop_group_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, hb_paint_composite_mode_t mode, Pointer<Void> user_data)
Darthb_paint_pop_transform_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<Void> user_data)
Darthb_paint_push_clip_glyph_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Darthb_codepoint_t glyph, Pointer<hb_font_t> font, Pointer<Void> user_data)
Darthb_paint_push_clip_path_end_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<Void> user_data)
Darthb_paint_push_clip_rectangle_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, double xmin, double ymin, double xmax, double ymax, Pointer<Void> user_data)
Darthb_paint_push_group_for_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, hb_paint_composite_mode_t mode, Pointer<Void> user_data)
Darthb_paint_push_group_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<Void> user_data)
Darthb_paint_push_transform_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, double xx, double yx, double xy, double yy, double dx, double dy, Pointer<Void> user_data)
Darthb_paint_radial_gradient_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_color_line_t> color_line, double x0, double y0, double x1, double y1, double x2, double y2, Pointer<Void> user_data)
Darthb_paint_sweep_gradient_func_tFunction = void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_color_line_t> color_line, double x0, double y0, double start_angle, double end_angle, Pointer<Void> user_data)
Darthb_paint_sweep_gradient_tile_func_tFunction = void Function(double a0, Darthb_color_t c0, double a1, Darthb_color_t c1, Pointer<Void> user_data)
Darthb_position_t = int
Darthb_reference_table_func_tFunction = Pointer<hb_blob_t> Function(Pointer<hb_face_t> face, Darthb_tag_t tag, Pointer<Void> user_data)
Darthb_tag_t = int
Darthb_unicode_combining_class_func_tFunction = hb_unicode_combining_class_t Function(Pointer<hb_unicode_funcs_t> ufuncs, Darthb_codepoint_t unicode, Pointer<Void> user_data)
Darthb_unicode_compose_func_tFunction = Darthb_bool_t Function(Pointer<hb_unicode_funcs_t> ufuncs, Darthb_codepoint_t a, Darthb_codepoint_t b, Pointer<hb_codepoint_t> ab, Pointer<Void> user_data)
Darthb_unicode_decompose_compatibility_func_tFunction = int Function(Pointer<hb_unicode_funcs_t> ufuncs, Darthb_codepoint_t u, Pointer<hb_codepoint_t> decomposed, Pointer<Void> user_data)
Darthb_unicode_decompose_func_tFunction = Darthb_bool_t Function(Pointer<hb_unicode_funcs_t> ufuncs, Darthb_codepoint_t ab, Pointer<hb_codepoint_t> a, Pointer<hb_codepoint_t> b, Pointer<Void> user_data)
Darthb_unicode_eastasian_width_func_tFunction = int Function(Pointer<hb_unicode_funcs_t> ufuncs, Darthb_codepoint_t unicode, Pointer<Void> user_data)
Darthb_unicode_general_category_func_tFunction = hb_unicode_general_category_t Function(Pointer<hb_unicode_funcs_t> ufuncs, Darthb_codepoint_t unicode, Pointer<Void> user_data)
Darthb_unicode_mirroring_func_tFunction = int Function(Pointer<hb_unicode_funcs_t> ufuncs, Darthb_codepoint_t unicode, Pointer<Void> user_data)
Darthb_unicode_script_func_tFunction = hb_script_t Function(Pointer<hb_unicode_funcs_t> ufuncs, Darthb_codepoint_t unicode, Pointer<Void> user_data)
hb_bool_t = Int
hb_bool_t:
hb_buffer_message_func_t = Pointer<NativeFunction<hb_buffer_message_func_tFunction>>
hb_buffer_message_func_t: @buffer: An #hb_buffer_t to work upon @font: The #hb_font_t the @buffer is shaped with @message: NULL-terminated message passed to the function @user_data: User data pointer passed by the caller
hb_buffer_message_func_tFunction = hb_bool_t Function(Pointer<hb_buffer_t> buffer, Pointer<hb_font_t> font, Pointer<Char> message, Pointer<Void> user_data)
hb_codepoint_t = Uint32
hb_codepoint_t:
hb_color_line_get_color_stops_func_t = Pointer<NativeFunction<hb_color_line_get_color_stops_func_tFunction>>
hb_color_line_get_color_stops_func_t: @color_line: a #hb_color_line_t object @color_line_data: the data accompanying @color_line @start: the index of the first color stop to return @count: (inout) (optional): Input = the maximum number of feature tags to return; Output = the actual number of feature tags returned (may be zero) @color_stops: (out) (array length=count) (optional): Array of #hb_color_stop_t to populate @user_data: the data accompanying this method
hb_color_line_get_color_stops_func_tFunction = UnsignedInt Function(Pointer<hb_color_line_t> color_line, Pointer<Void> color_line_data, UnsignedInt start, Pointer<UnsignedInt> count, Pointer<hb_color_stop_t> color_stops, Pointer<Void> user_data)
hb_color_line_get_extend_func_t = Pointer<NativeFunction<hb_color_line_get_extend_func_tFunction>>
hb_color_line_get_extend_func_t: @color_line: a #hb_color_line_t object @color_line_data: the data accompanying @color_line @user_data: the data accompanying this method
hb_color_line_get_extend_func_tFunction = UnsignedInt Function(Pointer<hb_color_line_t> color_line, Pointer<Void> color_line_data, Pointer<Void> user_data)
hb_color_t = Uint32
hb_color_t:
hb_destroy_func_t = Pointer<NativeFunction<hb_destroy_func_tFunction>>
hb_destroy_func_t: @user_data: the data to be destroyed
hb_destroy_func_tFunction = Void Function(Pointer<Void> user_data)
hb_draw_close_path_func_t = Pointer<NativeFunction<hb_draw_close_path_func_tFunction>>
hb_draw_close_path_func_t: @dfuncs: draw functions object @draw_data: The data accompanying the draw functions in hb_font_draw_glyph() @st: current draw state @user_data: User data pointer passed to hb_draw_funcs_set_close_path_func()
hb_draw_close_path_func_tFunction = Void Function(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, Pointer<Void> user_data)
hb_draw_cubic_to_func_t = Pointer<NativeFunction<hb_draw_cubic_to_func_tFunction>>
hb_draw_cubic_to_func_t: @dfuncs: draw functions object @draw_data: The data accompanying the draw functions in hb_font_draw_glyph() @st: current draw state @control1_x: X component of first control point @control1_y: Y component of first control point @control2_x: X component of second control point @control2_y: Y component of second control point @to_x: X component of target point @to_y: Y component of target point @user_data: User data pointer passed to hb_draw_funcs_set_cubic_to_func()
hb_draw_cubic_to_func_tFunction = Void Function(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, Float control1_x, Float control1_y, Float control2_x, Float control2_y, Float to_x, Float to_y, Pointer<Void> user_data)
hb_draw_line_to_func_t = Pointer<NativeFunction<hb_draw_line_to_func_tFunction>>
hb_draw_line_to_func_t: @dfuncs: draw functions object @draw_data: The data accompanying the draw functions in hb_font_draw_glyph() @st: current draw state @to_x: X component of target point @to_y: Y component of target point @user_data: User data pointer passed to hb_draw_funcs_set_line_to_func()
hb_draw_line_to_func_tFunction = Void Function(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, Float to_x, Float to_y, Pointer<Void> user_data)
hb_draw_move_to_func_t = Pointer<NativeFunction<hb_draw_line_to_func_tFunction>>
hb_draw_move_to_func_t: @dfuncs: draw functions object @draw_data: The data accompanying the draw functions in hb_font_draw_glyph() @st: current draw state @to_x: X component of target point @to_y: Y component of target point @user_data: User data pointer passed to hb_draw_funcs_set_move_to_func()
hb_draw_move_to_func_tFunction = Void Function(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, Float to_x, Float to_y, Pointer<Void> user_data)
hb_draw_quadratic_to_func_t = Pointer<NativeFunction<hb_draw_quadratic_to_func_tFunction>>
hb_draw_quadratic_to_func_t: @dfuncs: draw functions object @draw_data: The data accompanying the draw functions in hb_font_draw_glyph() @st: current draw state @control_x: X component of control point @control_y: Y component of control point @to_x: X component of target point @to_y: Y component of target point @user_data: User data pointer passed to hb_draw_funcs_set_quadratic_to_func()
hb_draw_quadratic_to_func_tFunction = Void Function(Pointer<hb_draw_funcs_t> dfuncs, Pointer<Void> draw_data, Pointer<hb_draw_state_t> st, Float control_x, Float control_y, Float to_x, Float to_y, Pointer<Void> user_data)
hb_font_draw_glyph_func_t = Pointer<NativeFunction<hb_font_draw_glyph_func_tFunction>>
hb_font_draw_glyph_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @draw_funcs: The draw functions to send the shape data to @draw_data: The data accompanying the draw functions @user_data: User data pointer passed by the caller
hb_font_draw_glyph_func_tFunction = Void Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t glyph, Pointer<hb_draw_funcs_t> draw_funcs, Pointer<Void> draw_data, Pointer<Void> user_data)
hb_font_draw_glyph_or_fail_func_t = Pointer<NativeFunction<hb_font_draw_glyph_or_fail_func_tFunction>>
hb_font_draw_glyph_or_fail_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @draw_funcs: The draw functions to send the shape data to @draw_data: The data accompanying the draw functions @user_data: User data pointer passed by the caller
hb_font_draw_glyph_or_fail_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t glyph, Pointer<hb_draw_funcs_t> draw_funcs, Pointer<Void> draw_data, Pointer<Void> user_data)
hb_font_get_font_extents_func_t = Pointer<NativeFunction<hb_font_get_font_extents_func_tFunction>>
hb_font_get_font_extents_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @extents: (out): The font extents retrieved @user_data: User data pointer passed by the caller
hb_font_get_font_extents_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Pointer<hb_font_extents_t> extents, Pointer<Void> user_data)
hb_font_get_font_h_extents_func_t = hb_font_get_font_extents_func_t
hb_font_get_font_h_extents_func_t:
hb_font_get_font_v_extents_func_t = hb_font_get_font_extents_func_t
hb_font_get_font_v_extents_func_t:
hb_font_get_glyph_advance_func_t = Pointer<NativeFunction<hb_font_get_glyph_advance_func_tFunction>>
hb_font_get_glyph_advance_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @user_data: User data pointer passed by the caller
hb_font_get_glyph_advance_func_tFunction = hb_position_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t glyph, Pointer<Void> user_data)
hb_font_get_glyph_advances_func_t = Pointer<NativeFunction<hb_font_get_glyph_advances_func_tFunction>>
hb_font_get_glyph_advances_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @count: The number of glyph IDs in the sequence queried @first_glyph: The first glyph ID to query @glyph_stride: The stride between successive glyph IDs @first_advance: (out): The first advance retrieved @advance_stride: The stride between successive advances @user_data: User data pointer passed by the caller
hb_font_get_glyph_advances_func_tFunction = Void Function(Pointer<hb_font_t> font, Pointer<Void> font_data, UnsignedInt count, Pointer<hb_codepoint_t> first_glyph, UnsignedInt glyph_stride, Pointer<hb_position_t> first_advance, UnsignedInt advance_stride, Pointer<Void> user_data)
hb_font_get_glyph_contour_point_func_t = Pointer<NativeFunction<hb_font_get_glyph_contour_point_func_tFunction>>
hb_font_get_glyph_contour_point_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @point_index: The contour-point index to query @x: (out): The X value retrieved for the contour point @y: (out): The Y value retrieved for the contour point @user_data: User data pointer passed by the caller
hb_font_get_glyph_contour_point_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t glyph, UnsignedInt point_index, Pointer<hb_position_t> x, Pointer<hb_position_t> y, Pointer<Void> user_data)
hb_font_get_glyph_extents_func_t = Pointer<NativeFunction<hb_font_get_glyph_extents_func_tFunction>>
hb_font_get_glyph_extents_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @extents: (out): The #hb_glyph_extents_t retrieved @user_data: User data pointer passed by the caller
hb_font_get_glyph_extents_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t glyph, Pointer<hb_glyph_extents_t> extents, Pointer<Void> user_data)
hb_font_get_glyph_from_name_func_t = Pointer<NativeFunction<hb_font_get_glyph_from_name_func_tFunction>>
hb_font_get_glyph_from_name_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @name: (array length=len): The name string to query @len: The length of the name queried @glyph: (out): The glyph ID retrieved @user_data: User data pointer passed by the caller
hb_font_get_glyph_from_name_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, Pointer<Char> name, Int len, Pointer<hb_codepoint_t> glyph, Pointer<Void> user_data)
hb_font_get_glyph_func_t = Pointer<NativeFunction<hb_font_get_glyph_func_tFunction>>
hb_font_get_glyph_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @unicode: The Unicode code point to query @variation_selector: The variation-selector code point to query @glyph: (out): The glyph ID retrieved @user_data: User data pointer passed by the caller
hb_font_get_glyph_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t unicode, hb_codepoint_t variation_selector, Pointer<hb_codepoint_t> glyph, Pointer<Void> user_data)
hb_font_get_glyph_h_advance_func_t = hb_font_get_glyph_advance_func_t
hb_font_get_glyph_h_advance_func_t:
hb_font_get_glyph_h_advances_func_t = hb_font_get_glyph_advances_func_t
hb_font_get_glyph_h_advances_func_t:
hb_font_get_glyph_h_kerning_func_t = hb_font_get_glyph_kerning_func_t
hb_font_get_glyph_h_kerning_func_t:
hb_font_get_glyph_h_origin_func_t = hb_font_get_glyph_origin_func_t
hb_font_get_glyph_h_origin_func_t:
hb_font_get_glyph_h_origins_func_t = hb_font_get_glyph_origins_func_t
hb_font_get_glyph_h_origins_func_t:
hb_font_get_glyph_kerning_func_t = Pointer<NativeFunction<hb_font_get_glyph_kerning_func_tFunction>>
hb_font_get_glyph_kerning_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @first_glyph: The glyph ID of the first glyph in the glyph pair @second_glyph: The glyph ID of the second glyph in the glyph pair @user_data: User data pointer passed by the caller
hb_font_get_glyph_kerning_func_tFunction = hb_position_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t first_glyph, hb_codepoint_t second_glyph, Pointer<Void> user_data)
hb_font_get_glyph_name_func_t = Pointer<NativeFunction<hb_font_get_glyph_name_func_tFunction>>
hb_font_get_glyph_name_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @name: (out) (array length=size): Name string retrieved for the glyph ID @size: Length of the glyph-name string retrieved @user_data: User data pointer passed by the caller
hb_font_get_glyph_name_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t glyph, Pointer<Char> name, UnsignedInt size, Pointer<Void> user_data)
hb_font_get_glyph_origin_func_t = Pointer<NativeFunction<hb_font_get_glyph_origin_func_tFunction>>
hb_font_get_glyph_origin_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @x: (out): The X coordinate of the origin @y: (out): The Y coordinate of the origin @user_data: User data pointer passed by the caller
hb_font_get_glyph_origin_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t glyph, Pointer<hb_position_t> x, Pointer<hb_position_t> y, Pointer<Void> user_data)
hb_font_get_glyph_origins_func_t = Pointer<NativeFunction<hb_font_get_glyph_origins_func_tFunction>>
hb_font_get_glyph_origins_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @first_glyph: The first glyph ID to query @count: number of glyphs to query @glyph_stride: The stride between successive glyph IDs @first_x: (out): The first origin X coordinate retrieved @x_stride: The stride between successive origin X coordinates @first_y: (out): The first origin Y coordinate retrieved @y_stride: The stride between successive origin Y coordinates @user_data: User data pointer passed by the caller
hb_font_get_glyph_origins_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, UnsignedInt count, Pointer<hb_codepoint_t> first_glyph, UnsignedInt glyph_stride, Pointer<hb_position_t> first_x, UnsignedInt x_stride, Pointer<hb_position_t> first_y, UnsignedInt y_stride, Pointer<Void> user_data)
hb_font_get_glyph_shape_func_t = Pointer<NativeFunction<hb_font_draw_glyph_func_tFunction>>
hb_font_get_glyph_shape_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @draw_funcs: The draw functions to send the shape data to @draw_data: The data accompanying the draw functions @user_data: User data pointer passed by the caller
hb_font_get_glyph_shape_func_tFunction = Void Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t glyph, Pointer<hb_draw_funcs_t> draw_funcs, Pointer<Void> draw_data, Pointer<Void> user_data)
hb_font_get_glyph_v_advance_func_t = hb_font_get_glyph_advance_func_t
hb_font_get_glyph_v_advance_func_t:
hb_font_get_glyph_v_advances_func_t = hb_font_get_glyph_advances_func_t
hb_font_get_glyph_v_advances_func_t:
hb_font_get_glyph_v_kerning_func_t = hb_font_get_glyph_kerning_func_t
hb_font_get_glyph_v_kerning_func_t:
hb_font_get_glyph_v_origin_func_t = hb_font_get_glyph_origin_func_t
hb_font_get_glyph_v_origin_func_t:
hb_font_get_glyph_v_origins_func_t = hb_font_get_glyph_origins_func_t
hb_font_get_glyph_v_origins_func_t:
hb_font_get_nominal_glyph_func_t = Pointer<NativeFunction<hb_font_get_nominal_glyph_func_tFunction>>
hb_font_get_nominal_glyph_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @unicode: The Unicode code point to query @glyph: (out): The glyph ID retrieved @user_data: User data pointer passed by the caller
hb_font_get_nominal_glyph_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t unicode, Pointer<hb_codepoint_t> glyph, Pointer<Void> user_data)
hb_font_get_nominal_glyphs_func_t = Pointer<NativeFunction<hb_font_get_nominal_glyphs_func_tFunction>>
hb_font_get_nominal_glyphs_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @count: number of code points to query @first_unicode: The first Unicode code point to query @unicode_stride: The stride between successive code points @first_glyph: (out): The first glyph ID retrieved @glyph_stride: The stride between successive glyph IDs @user_data: User data pointer passed by the caller
hb_font_get_nominal_glyphs_func_tFunction = UnsignedInt Function(Pointer<hb_font_t> font, Pointer<Void> font_data, UnsignedInt count, Pointer<hb_codepoint_t> first_unicode, UnsignedInt unicode_stride, Pointer<hb_codepoint_t> first_glyph, UnsignedInt glyph_stride, Pointer<Void> user_data)
hb_font_get_variation_glyph_func_t = Pointer<NativeFunction<hb_font_get_glyph_func_tFunction>>
hb_font_get_variation_glyph_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @unicode: The Unicode code point to query @variation_selector: The variation-selector code point to query @glyph: (out): The glyph ID retrieved @user_data: User data pointer passed by the caller
hb_font_get_variation_glyph_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t unicode, hb_codepoint_t variation_selector, Pointer<hb_codepoint_t> glyph, Pointer<Void> user_data)
hb_font_paint_glyph_func_t = Pointer<NativeFunction<hb_font_paint_glyph_func_tFunction>>
hb_font_paint_glyph_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @paint_funcs: The paint functions to use @paint_data: The data accompanying the paint functions @palette_index: The color palette to use @foreground: The foreground color @user_data: User data pointer passed by the caller
hb_font_paint_glyph_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t glyph, Pointer<hb_paint_funcs_t> paint_funcs, Pointer<Void> paint_data, UnsignedInt palette_index, hb_color_t foreground, Pointer<Void> user_data)
hb_font_paint_glyph_or_fail_func_t = Pointer<NativeFunction<hb_font_paint_glyph_func_tFunction>>
hb_font_paint_glyph_or_fail_func_t: @font: #hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @paint_funcs: The paint functions to use @paint_data: The data accompanying the paint functions @palette_index: The color palette to use @foreground: The foreground color @user_data: User data pointer passed by the caller
hb_font_paint_glyph_or_fail_func_tFunction = hb_bool_t Function(Pointer<hb_font_t> font, Pointer<Void> font_data, hb_codepoint_t glyph, Pointer<hb_paint_funcs_t> paint_funcs, Pointer<Void> paint_data, UnsignedInt palette_index, hb_color_t foreground, Pointer<Void> user_data)
hb_get_table_tags_func_t = Pointer<NativeFunction<hb_get_table_tags_func_tFunction>>
hb_get_table_tags_func_t: @face: A face object @start_offset: The index of first table tag to retrieve @table_count: (inout): Input = the maximum number of table tags to return; Output = the actual number of table tags returned (may be zero) @table_tags: (out) (array length=table_count): The array of table tags found @user_data: User data pointer passed by the caller
hb_get_table_tags_func_tFunction = UnsignedInt Function(Pointer<hb_face_t> face, UnsignedInt start_offset, Pointer<UnsignedInt> table_count, Pointer<hb_codepoint_t> table_tags, Pointer<Void> user_data)
hb_language_t = Pointer<hb_language_impl_t>
hb_language_t:
hb_mask_t = Uint32
hb_mask_t:
hb_ot_name_id_t = UnsignedInt
hb_ot_name_id_t:
hb_paint_color_func_t = Pointer<NativeFunction<hb_paint_color_func_tFunction>>
hb_paint_color_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @is_foreground: whether the color is the foreground @color: The color to use, unpremultiplied @user_data: User data pointer passed to hb_paint_funcs_set_color_func()
hb_paint_color_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, hb_bool_t is_foreground, hb_color_t color, Pointer<Void> user_data)
hb_paint_color_glyph_func_t = Pointer<NativeFunction<hb_paint_color_glyph_func_tFunction>>
hb_paint_color_glyph_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @glyph: the glyph ID @font: the font @user_data: User data pointer passed to hb_paint_funcs_set_color_glyph_func()
hb_paint_color_glyph_func_tFunction = hb_bool_t Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, hb_codepoint_t glyph, Pointer<hb_font_t> font, Pointer<Void> user_data)
hb_paint_custom_palette_color_func_t = Pointer<NativeFunction<hb_paint_custom_palette_color_func_tFunction>>
hb_paint_custom_palette_color_func_t: @funcs: paint functions object. @paint_data: data accompanying the paint functions in hb_font_paint_glyph(). @color_index: color index to fetch. @color: (out): fetched color. @user_data: user data pointer passed to hb_paint_funcs_set_custom_palette_color_func().
hb_paint_custom_palette_color_func_tFunction = hb_bool_t Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, UnsignedInt color_index, Pointer<hb_codepoint_t> color, Pointer<Void> user_data)
hb_paint_image_func_t = Pointer<NativeFunction<hb_paint_image_func_tFunction>>
hb_paint_image_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @image: the image data @width: width of the raster image in pixels, or 0 @height: height of the raster image in pixels, or 0 @format: the image format as a tag @slant: Deprecated. Always set to 0.0. @extents: (nullable): glyph extents for desired rendering @user_data: User data pointer passed to hb_paint_funcs_set_image_func()
hb_paint_image_func_tFunction = hb_bool_t Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_blob_t> image, UnsignedInt width, UnsignedInt height, hb_tag_t format, Float slant, Pointer<hb_glyph_extents_t> extents, Pointer<Void> user_data)
hb_paint_linear_gradient_func_t = Pointer<NativeFunction<hb_paint_linear_gradient_func_tFunction>>
hb_paint_linear_gradient_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @color_line: Color information for the gradient @x0: X coordinate of the first point @y0: Y coordinate of the first point @x1: X coordinate of the second point @y1: Y coordinate of the second point @x2: X coordinate of the third point @y2: Y coordinate of the third point @user_data: User data pointer passed to hb_paint_funcs_set_linear_gradient_func()
hb_paint_linear_gradient_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_color_line_t> color_line, Float x0, Float y0, Float x1, Float y1, Float x2, Float y2, Pointer<Void> user_data)
hb_paint_pop_clip_func_t = Pointer<NativeFunction<hb_paint_pop_clip_func_tFunction>>
hb_paint_pop_clip_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @user_data: User data pointer passed to hb_paint_funcs_set_pop_clip_func()
hb_paint_pop_clip_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<Void> user_data)
hb_paint_pop_group_func_t = Pointer<NativeFunction<hb_paint_pop_group_func_tFunction>>
hb_paint_pop_group_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @mode: the compositing mode to use @user_data: User data pointer passed to hb_paint_funcs_set_pop_group_func()
hb_paint_pop_group_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, UnsignedInt mode, Pointer<Void> user_data)
hb_paint_pop_transform_func_t = Pointer<NativeFunction<hb_paint_pop_clip_func_tFunction>>
hb_paint_pop_transform_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @user_data: User data pointer passed to hb_paint_funcs_set_pop_transform_func()
hb_paint_pop_transform_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<Void> user_data)
hb_paint_push_clip_glyph_func_t = Pointer<NativeFunction<hb_paint_push_clip_glyph_func_tFunction>>
hb_paint_push_clip_glyph_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @glyph: the glyph ID @font: the font @user_data: User data pointer passed to hb_paint_funcs_set_push_clip_glyph_func()
hb_paint_push_clip_glyph_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, hb_codepoint_t glyph, Pointer<hb_font_t> font, Pointer<Void> user_data)
hb_paint_push_clip_path_end_func_t = Pointer<NativeFunction<hb_paint_pop_clip_func_tFunction>>
hb_paint_push_clip_path_end_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @user_data: User data pointer passed to hb_paint_funcs_set_push_clip_path_end_func()
hb_paint_push_clip_path_end_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<Void> user_data)
hb_paint_push_clip_path_start_func_t = Pointer<NativeFunction<hb_paint_push_clip_path_start_func_tFunction>>
hb_paint_push_clip_path_start_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @draw_data: (out): location to store the draw data the caller should pass alongside the returned draw funcs. @user_data: User data pointer passed to hb_paint_funcs_set_push_clip_path_start_func()
hb_paint_push_clip_path_start_func_tFunction = Pointer<hb_draw_funcs_t> Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<Pointer<Void>> draw_data, Pointer<Void> user_data)
hb_paint_push_clip_rectangle_func_t = Pointer<NativeFunction<hb_paint_push_clip_rectangle_func_tFunction>>
hb_paint_push_clip_rectangle_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @xmin: min X for the rectangle @ymin: min Y for the rectangle @xmax: max X for the rectangle @ymax: max Y for the rectangle @user_data: User data pointer passed to hb_paint_funcs_set_push_clip_rectangle_func()
hb_paint_push_clip_rectangle_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Float xmin, Float ymin, Float xmax, Float ymax, Pointer<Void> user_data)
hb_paint_push_group_for_func_t = Pointer<NativeFunction<hb_paint_pop_group_func_tFunction>>
hb_paint_push_group_for_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @mode: the compositing mode that will be used when the group is popped @user_data: User data pointer passed to hb_paint_funcs_set_push_group_for_func()
hb_paint_push_group_for_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, UnsignedInt mode, Pointer<Void> user_data)
hb_paint_push_group_func_t = Pointer<NativeFunction<hb_paint_pop_clip_func_tFunction>>
hb_paint_push_group_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @user_data: User data pointer passed to hb_paint_funcs_set_push_group_func()
hb_paint_push_group_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<Void> user_data)
hb_paint_push_transform_func_t = Pointer<NativeFunction<hb_paint_push_transform_func_tFunction>>
hb_paint_push_transform_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @xx: xx component of the transform matrix @yx: yx component of the transform matrix @xy: xy component of the transform matrix @yy: yy component of the transform matrix @dx: dx component of the transform matrix @dy: dy component of the transform matrix @user_data: User data pointer passed to hb_paint_funcs_set_push_transform_func()
hb_paint_push_transform_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Float xx, Float yx, Float xy, Float yy, Float dx, Float dy, Pointer<Void> user_data)
hb_paint_radial_gradient_func_t = Pointer<NativeFunction<hb_paint_linear_gradient_func_tFunction>>
hb_paint_radial_gradient_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @color_line: Color information for the gradient @x0: X coordinate of the first circle's center @y0: Y coordinate of the first circle's center @r0: radius of the first circle @x1: X coordinate of the second circle's center @y1: Y coordinate of the second circle's center @r1: radius of the second circle @user_data: User data pointer passed to hb_paint_funcs_set_radial_gradient_func()
hb_paint_radial_gradient_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_color_line_t> color_line, Float x0, Float y0, Float x1, Float y1, Float x2, Float y2, Pointer<Void> user_data)
hb_paint_sweep_gradient_func_t = Pointer<NativeFunction<hb_paint_sweep_gradient_func_tFunction>>
hb_paint_sweep_gradient_func_t: @funcs: paint functions object @paint_data: The data accompanying the paint functions in hb_font_paint_glyph() @color_line: Color information for the gradient @x0: X coordinate of the circle's center @y0: Y coordinate of the circle's center @start_angle: the start angle, in radians @end_angle: the end angle, in radians @user_data: User data pointer passed to hb_paint_funcs_set_sweep_gradient_func()
hb_paint_sweep_gradient_func_tFunction = Void Function(Pointer<hb_paint_funcs_t> funcs, Pointer<Void> paint_data, Pointer<hb_color_line_t> color_line, Float x0, Float y0, Float start_angle, Float end_angle, Pointer<Void> user_data)
hb_paint_sweep_gradient_tile_func_t = Pointer<NativeFunction<hb_paint_sweep_gradient_tile_func_tFunction>>
hb_paint_sweep_gradient_tile_func_t: @a0: segment start angle, in radians. @c0: segment start color. @a1: segment end angle, in radians. @c1: segment end color. @user_data: user data passed to hb_paint_sweep_gradient_tiles().
hb_paint_sweep_gradient_tile_func_tFunction = Void Function(Float a0, hb_color_t c0, Float a1, hb_color_t c1, Pointer<Void> user_data)
hb_position_t = Int32
hb_position_t:
hb_reference_table_func_t = Pointer<NativeFunction<hb_reference_table_func_tFunction>>
hb_reference_table_func_t: @face: an #hb_face_t to reference table for @tag: the tag of the table to reference @user_data: User data pointer passed by the caller
hb_reference_table_func_tFunction = Pointer<hb_blob_t> Function(Pointer<hb_face_t> face, hb_tag_t tag, Pointer<Void> user_data)
hb_tag_t = Uint32
hb_tag_t:
hb_unicode_combining_class_func_t = Pointer<NativeFunction<hb_unicode_combining_class_func_tFunction>>
hb_unicode_combining_class_func_t: @ufuncs: A Unicode-functions structure @unicode: The code point to query @user_data: User data pointer passed by the caller
hb_unicode_combining_class_func_tFunction = UnsignedInt Function(Pointer<hb_unicode_funcs_t> ufuncs, hb_codepoint_t unicode, Pointer<Void> user_data)
hb_unicode_compose_func_t = Pointer<NativeFunction<hb_unicode_compose_func_tFunction>>
hb_unicode_compose_func_t: @ufuncs: A Unicode-functions structure @a: The first code point to compose @b: The second code point to compose @ab: (out): The composed code point @user_data: user data pointer passed by the caller
hb_unicode_compose_func_tFunction = hb_bool_t Function(Pointer<hb_unicode_funcs_t> ufuncs, hb_codepoint_t a, hb_codepoint_t b, Pointer<hb_codepoint_t> ab, Pointer<Void> user_data)
hb_unicode_decompose_compatibility_func_t = Pointer<NativeFunction<hb_unicode_decompose_compatibility_func_tFunction>>
hb_unicode_decompose_compatibility_func_t: @ufuncs: a Unicode function structure @u: codepoint to decompose @decomposed: address of codepoint array (of length #HB_UNICODE_MAX_DECOMPOSITION_LEN) to write decomposition into @user_data: user data pointer as passed to hb_unicode_funcs_set_decompose_compatibility_func()
hb_unicode_decompose_compatibility_func_tFunction = UnsignedInt Function(Pointer<hb_unicode_funcs_t> ufuncs, hb_codepoint_t u, Pointer<hb_codepoint_t> decomposed, Pointer<Void> user_data)
hb_unicode_decompose_func_t = Pointer<NativeFunction<hb_unicode_decompose_func_tFunction>>
hb_unicode_decompose_func_t: @ufuncs: A Unicode-functions structure @ab: The code point to decompose @a: (out): The first decomposed code point @b: (out): The second decomposed code point @user_data: user data pointer passed by the caller
hb_unicode_decompose_func_tFunction = hb_bool_t Function(Pointer<hb_unicode_funcs_t> ufuncs, hb_codepoint_t ab, Pointer<hb_codepoint_t> a, Pointer<hb_codepoint_t> b, Pointer<Void> user_data)
hb_unicode_eastasian_width_func_t = Pointer<NativeFunction<hb_unicode_combining_class_func_tFunction>>
hb_unicode_eastasian_width_func_t: @ufuncs: A Unicode-functions structure @unicode: The code point to query @user_data: User data pointer passed by the caller
hb_unicode_eastasian_width_func_tFunction = UnsignedInt Function(Pointer<hb_unicode_funcs_t> ufuncs, hb_codepoint_t unicode, Pointer<Void> user_data)
hb_unicode_general_category_func_t = Pointer<NativeFunction<hb_unicode_combining_class_func_tFunction>>
hb_unicode_general_category_func_t: @ufuncs: A Unicode-functions structure @unicode: The code point to query @user_data: User data pointer passed by the caller
hb_unicode_general_category_func_tFunction = UnsignedInt Function(Pointer<hb_unicode_funcs_t> ufuncs, hb_codepoint_t unicode, Pointer<Void> user_data)
hb_unicode_mirroring_func_t = Pointer<NativeFunction<hb_unicode_mirroring_func_tFunction>>
hb_unicode_mirroring_func_t: @ufuncs: A Unicode-functions structure @unicode: The code point to query @user_data: User data pointer passed by the caller
hb_unicode_mirroring_func_tFunction = hb_codepoint_t Function(Pointer<hb_unicode_funcs_t> ufuncs, hb_codepoint_t unicode, Pointer<Void> user_data)
hb_unicode_script_func_t = Pointer<NativeFunction<hb_unicode_combining_class_func_tFunction>>
hb_unicode_script_func_t: @ufuncs: A Unicode-functions structure @unicode: The code point to query @user_data: User data pointer passed by the caller
hb_unicode_script_func_tFunction = UnsignedInt Function(Pointer<hb_unicode_funcs_t> ufuncs, hb_codepoint_t unicode, Pointer<Void> user_data)
hb_var_int_t = _hb_var_int_t
hb_var_num_t = _hb_var_num_t