Data type for booleans.
Data type for holding Unicode codepoints. Also used to hold glyph IDs.
Data type for holding color values. Colors are eight bits per channel RGB plus alpha transparency.
A virtual method for the #hb_font_funcs_t of an #hb_font_t object.
A virtual method for the #hb_font_funcs_t of an #hb_font_t object.
A virtual method for the #hb_font_funcs_t of an #hb_font_t object.
A virtual method for the #hb_font_funcs_t of an #hb_font_t object.
A virtual method for the #hb_font_funcs_t of an #hb_font_t object.
A virtual method for the #hb_font_funcs_t of an #hb_font_t object.
A virtual method for the #hb_font_funcs_t of an #hb_font_t object.
A virtual method for the #hb_font_funcs_t of an #hb_font_t object.
A virtual method for the #hb_font_funcs_t of an #hb_font_t object.
A virtual method for the #hb_font_funcs_t of an #hb_font_t object.
Data type for languages. Each #hb_language_t corresponds to a BCP 47 language tag.
Data type for bitmasks.
An integral type representing an OpenType 'name' table name identifier. There are predefined name IDs, as well as name IDs return from other API. These can be used to fetch name strings from a font face.
Data type for holding a single coordinate value. Contour points and other multi-dimensional data are stored as tuples of #hb_position_t's.
Data type for tag identifiers. Tags are four byte integers, each byte representing a character.
The selectors defined for specifying AAT feature settings.
The possible feature types defined for AAT shaping, from Apple Font Feature Registry.
Data type for holding HarfBuzz's clustering behavior options. The cluster level dictates one aspect of how HarfBuzz will treat non-base characters during shaping.
The type of #hb_buffer_t contents.
Flags from comparing two #hb_buffer_t's.
Flags for #hb_buffer_t.
Flags that control what glyph information are serialized in harfbuzz.global.bufferSerializeGlyphs.
The buffer serialization and de-serialization format used in harfbuzz.global.bufferSerializeGlyphs and harfbuzz.global.bufferDeserializeGlyphs.
The direction of a text segment or buffer.
Flags for #hb_glyph_info_t.
Data type holding the memory modes available to client programs.
Flags that describe the properties of color palette.
Baseline tags from Baseline Tags registry.
The GDEF classes defined for glyphs.
The 'MATH' table constants, refer to OpenType documentation
For more explanations.
Flags for math glyph parts.
The math kerning-table types defined for the four corners of a glyph.
Known metadata tags from https://docs.microsoft.com/en-us/typography/opentype/spec/meta
Metric tags corresponding to [MVAR Value Tags](https://docs.microsoft.com/en-us/typography/opentype/spec/mvar#value-tags)
An enum type representing the pre-defined name IDs.
Flags for #hb_ot_var_axis_info_t.
The values of this enumeration describe the compositing modes that can be used when combining temporary redirected drawing with the backdrop.
The values of this enumeration determine how color values outside the minimum and maximum defined offset on a #hb_color_line_t are determined.
Data type for scripts. Each #hb_script_t's value is an #hb_tag_t corresponding to the four-letter values defined by ISO 15924.
Defined by OpenType Design-Variation Axis Tag Registry.
Data type for the Canonical_Combining_Class (ccc) property from the Unicode Character Database.
Data type for the "General_Category" (gc) property from the Unicode Character Database.
Structure representing a setting for an #hb_aat_layout_feature_type_t.
Data type for blobs. A blob wraps a chunk of binary data and facilitates its lifecycle management between a client program and HarfBuzz.
The main structure holding the input text and its properties before shaping, and output glyphs and their information after shaping.
A struct containing color information for a gradient.
Information about a color stop on a color line.
Glyph draw callbacks.
Current drawing state.
Data type for holding font faces.
The #hb_feature_t is the structure that holds information about requested feature application. The feature will be applied with the given value to all glyphs which are in clusters between @start (inclusive) and @end (exclusive). Setting start to #HB_FEATURE_GLOBAL_START and end to #HB_FEATURE_GLOBAL_END specifies that the feature always applies to the entire buffer.
Font-wide extent values, measured in font units.
Data type containing a set of virtual methods used for working on #hb_font_t font objects.
Data type for holding fonts.
Glyph extent values, measured in font units.
The #hb_glyph_info_t is the structure that holds information about the glyphs and their relation to input text.
The #hb_glyph_position_t is the structure that holds the positions of the glyph in both horizontal and vertical directions. All positions in #hb_glyph_position_t are relative to the current point.
Data type for holding integer-to-integer hash maps.
Pairs of glyph and color index.
Data type to hold information for a "part" component of a math-variant glyph. Large variants for stretchable math glyphs (such as parentheses) can be constructed on the fly from parts.
Data type to hold math-variant information for a glyph.
Data type to hold math kerning (cut-in) information for a glyph.
Structure representing a name ID in a particular language.
Data type for holding variation-axis values.
Use #hb_ot_var_axis_info_t instead.
Glyph paint callbacks.
The structure that holds various text properties of an #hb_buffer_t. Can be set and retrieved using harfbuzz.global.bufferSetSegmentProperties and harfbuzz.global.bufferGetSegmentProperties, respectively.
Data type for holding a set of integers. #hb_set_t's are used to gather and contain glyph IDs, Unicode code points, and various other collections of discrete values.
Data type for holding a shaping plan.
Data type containing a set of virtual methods used for accessing various Unicode character properties.
Data structure for holding user-data keys.
Data type for holding variation data. Registered OpenType variation-axis tags are listed in OpenType Axis Tag Registry.