Description

Functions and macros in this section are used to implement the OpenType Layout
features and algorithms. These are mostly useful when writing Fontconfig-based
shaping engines

Details

PangoOTTag

typedef guint32 PangoOTTag;

The PangoOTTag typedef is used to represent TrueType and OpenType
four letter tags inside Pango. Use the FT_MAKE_TAG() macro
defined in the FreeType2 header freetype/freetype.h to
create PangoOTTags manually.

PangoOTInfo

typedef struct _PangoOTInfo PangoOTInfo;

The PangoOTInfo struct contains the various
tables associated with an OpenType font. It contains only private fields and
should only be accessed via the pango_ot_info_* functions
which are documented below. To obtain a PangoOTInfo,
use pango_ot_info_new().

PangoOTBuffer

typedef struct _PangoOTBuffer PangoOTBuffer;

The PangoOTBuffer structure is used to store strings of glyphs associated
with a PangoFcFont, suitable for OpenType layout processing. It contains
only private fields and should only be accessed via the
pango_ot_buffer_* functions which are documented below.
To obtain a PangoOTBuffer, use pango_ot_buffer_new().

PangoOTRuleset

typedef struct _PangoOTRuleset PangoOTRuleset;

The PangoOTRuleSet structure holds a
set of features selected from the tables in an OpenType font.
(A feature is an operation such as adjusting glyph positioning
that should be applied to a text feature such as a certain
type of accent.) A PangoOTRuleSet
is created with pango_ot_ruleset_new(), features are added
to it with pango_ot_ruleset_add_feature(), then it is
applied to a PangoGlyphString with pango_ot_ruleset_shape().

pango_ot_buffer_set_zero_width_marks ()

Sets whether characters with a mark class should be forced to zero width.
This setting is needed for proper positioning of Arabic accents,
but will produce incorrect results with standard OpenType Indic
fonts.