Fonts
Structures representing abstract fonts
Pango supports a flexible architecture where a
particular rendering architecture can supply an
implementation of fonts. The #PangoFont structure
represents an abstract rendering-system-independent font.
Pango provides routines to list available fonts, and
to load a font of a given description.
The #PangoFontDescription structure represents the description
of an ideal font. These structures are used both to list
what fonts are available on the system and also for specifying
the characteristics of a font to load.
The #GObject type for #PangoFontDescription.
@PANGO_STYLE_NORMAL:
@PANGO_STYLE_OBLIQUE:
@PANGO_STYLE_ITALIC:
The #GObject type for #PangoStyle.
An enumeration specifying the weight (boldness) of a font. This is a numerical
value ranging from 100 to 900, but there are some predefined values:
@PANGO_WEIGHT_THIN: the thin weight (= 100; Since: 1.24)
@PANGO_WEIGHT_ULTRALIGHT: the ultralight weight (= 200)
@PANGO_WEIGHT_LIGHT: the light weight (= 300)
@PANGO_WEIGHT_BOOK: the book weight (= 380; Since: 1.24)
@PANGO_WEIGHT_NORMAL: the default weight (= 400)
@PANGO_WEIGHT_MEDIUM: the normal weight (= 500; Since: 1.24)
@PANGO_WEIGHT_SEMIBOLD: the semibold weight (= 600)
@PANGO_WEIGHT_BOLD: the bold weight (= 700)
@PANGO_WEIGHT_ULTRABOLD: the ultrabold weight (= 800)
@PANGO_WEIGHT_HEAVY: the heavy weight (= 900)
@PANGO_WEIGHT_ULTRAHEAVY: the ultraheavy weight (= 1000; Since: 1.24)
The #GObject type for #PangoWeight.
An enumeration specifying capitalization variant of the font.
@PANGO_VARIANT_NORMAL: A normal font.
@PANGO_VARIANT_SMALL_CAPS: A font with the lower case characters
replaced by smaller variants of the capital characters.
The #GObject type for #PangoVariant.
An enumeration specifying the width of the font relative to other designs
within a family.
@PANGO_STRETCH_ULTRA_CONDENSED: ultra condensed width
@PANGO_STRETCH_EXTRA_CONDENSED: extra condensed width
@PANGO_STRETCH_CONDENSED: condensed width
@PANGO_STRETCH_SEMI_CONDENSED: semi condensed width
@PANGO_STRETCH_NORMAL: the normal width
@PANGO_STRETCH_SEMI_EXPANDED: semi expanded width
@PANGO_STRETCH_EXPANDED: expanded width
@PANGO_STRETCH_EXTRA_EXPANDED: extra expanded width
@PANGO_STRETCH_ULTRA_EXPANDED: ultra expanded width
The #GObject type for #PangoStretch.
The bits in a #PangoFontMask correspond to fields in a
#PangoFontDescription that have been set.
@PANGO_FONT_MASK_FAMILY: the font family is specified.
@PANGO_FONT_MASK_STYLE: the font style is specified.
@PANGO_FONT_MASK_VARIANT: the font variant is specified.
@PANGO_FONT_MASK_WEIGHT: the font weight is specified.
@PANGO_FONT_MASK_STRETCH: the font stretch is specified.
@PANGO_FONT_MASK_SIZE: the font size is specified.
@PANGO_FONT_MASK_GRAVITY: the font gravity is specified (Since: 1.16.)
The #GObject type for #PangoFontMask.
@Returns:
@desc:
@Returns:
@desc:
@Returns:
@desc:
@Returns:
@desc1:
@desc2:
@Returns:
@desc:
@descs:
@n_descs:
@desc:
@family:
@desc:
@family:
@desc:
@Returns:
@desc:
@style:
@desc:
@Returns:
@desc:
@variant:
@desc:
@Returns:
@desc:
@weight:
@desc:
@Returns:
@desc:
@stretch:
@desc:
@Returns:
@desc:
@size:
@desc:
@Returns:
@desc:
@size:
@desc:
@Returns:
@desc:
@gravity:
@desc:
@Returns:
@desc:
@Returns:
@desc:
@to_unset:
@desc:
@desc_to_merge:
@replace_existing:
@desc:
@desc_to_merge:
@replace_existing:
@desc:
@old_match:
@new_match:
@Returns:
@str:
@Returns:
@desc:
@Returns:
@desc:
@Returns:
A #PangoFontMetrics structure holds the overall metric information
for a font (possibly restricted to a script). The fields of this
structure are private to implementations of a font backend. See
the documentation of the corresponding getters for documentation
of their meaning.
@ref_count: reference count. Used internally. See pango_font_metrics_ref()
and pango_font_metrics_unref().
@ascent: the distance from the baseline to the highest point of the glyphs of
the font. This is positive in practically all fonts.
@descent: the distance from the baseline to the lowest point of the glyphs of
the font. This is positive in practically all fonts.
@approximate_char_width: approximate average width of the regular glyphs of
the font. Note that for this calculation, East Asian characters
(those passing g_unichar_iswide()) are counted as double-width.
This produces a more uniform value for this measure across languages
and results in more uniform and more expected UI sizes.
@approximate_digit_width: approximate average width of the glyphs for digits
of the font.
@underline_position: position of the underline. This is normally negative.
@underline_thickness: thickness of the underline.
@strikethrough_position: position of the strikethrough line. This is
normally positive.
@strikethrough_thickness: thickness of the strikethrough line.
The #GObject type for #PangoFontMetrics.
@metrics:
@Returns:
@metrics:
@metrics:
@Returns:
@metrics:
@Returns:
@metrics:
@Returns:
@metrics:
@Returns:
@metrics:
@Returns:
@metrics:
@Returns:
@metrics:
@Returns:
@metrics:
@Returns:
The #PangoFont structure is used to represent
a font in a rendering-system-independent matter.
To create an implementation of a #PangoFont,
the rendering-system specific code should allocate
a larger structure that contains a nested
#PangoFont, fill in the klass member of
the nested #PangoFont with a pointer to
a appropriate #PangoFontClass, then call
pango_font_init() on the structure.
The #PangoFont structure contains one member
which the implementation fills in.
The #GObject type for #PangoFont.
Casts a #GObject to a #PangoFont.
@object: a #GObject.
Returns %TRUE if @object is a #PangoFont.
@object: a #GObject.
@font:
@language:
@ch:
@Returns:
@font:
@Returns:
@font:
@Returns:
@font:
@language:
@Returns:
@font:
@glyph:
@ink_rect:
@logical_rect:
@font:
@language:
@Returns:
@font:
@Returns:
The #PangoFontFamily structure is used to represent a family of related
font faces. The faces in a family share a common design, but differ in
slant, weight, width and other aspects.
The #GObject type for #PangoFontFamily.
Casts a #GObject to a #PangoFontFamily.
@object: a #GObject.
Returns %TRUE if @object is a #PangoFontFamily.
@object: a #GObject.
@family:
@Returns:
@family:
@Returns:
@family:
@faces:
@n_faces:
The #PangoFontFace structure is used to represent a group of fonts with
the same family, slant, weight, width, but varying sizes.
The #GObject type for #PangoFontFace.
Casts a #GObject to a #PangoFontFace.
@object: a #GObject.
Returns %TRUE if @object is a #PangoFontFace.
@object: a #GObject.
@face:
@Returns:
@face:
@sizes:
@n_sizes:
@face:
@Returns:
@face:
@Returns:
The #PangoFontMap represents the set of fonts available for a
particular rendering system. This is a virtual object with
implementations being specific to particular rendering systems. To
create an implementation of a #PangoFontMap, the rendering-system
specific code should allocate a larger structure that contains a nested
#PangoFontMap, fill in the klass member of the nested #PangoFontMap with a
pointer to a appropriate #PangoFontMapClass, then call
pango_font_map_init() on the structure.
The #PangoFontMap structure contains one member which the implementation
fills in.
The #GObject type for #PangoFontMap.
Casts a #GObject to a #PangoFontMap.
@object: a #GObject.
Returns %TRUE if @object is a #PangoFontMap.
@object: a #GObject.
The #PangoFontMapClass structure holds the virtual functions for
a particular #PangoFontMap implementation.
@parent_class: parent #GObjectClass.
@load_font: a function to load a font with a given description. See
pango_font_map_load_font().
@list_families: A function to list available font families. See
pango_font_map_list_families().
@load_fontset: a function to load a fontset with a given given description
suitable for a particular language. See
pango_font_map_load_fontset().
@shape_engine_type: the type of rendering-system-dependent engines that
can handle fonts of this fonts loaded with this fontmap.
Casts a #GObject to a #PangoFontMapClass.
@klass: a #GObject.
Returns %TRUE if @klass is a subtype of #PangoFontMapClass.
@klass: a #GObject.
Returns the type of a #PangoFontMap.
@obj: a #PangoFontMap.
@fontmap:
@Returns:
@fontmap:
@context:
@desc:
@Returns:
@fontmap:
@context:
@desc:
@language:
@Returns:
@fontmap:
@families:
@n_families:
@fontmap:
@Returns:
A #PangoFontset represents a set of #PangoFont to use
when rendering text. It is the result of resolving a
#PangoFontDescription against a particular #PangoContext.
It has operations for finding the component font for
a particular Unicode character, and for finding a composite
set of metrics for the entire fontset.
The #GObject type for #PangoFontset.
The #PangoFontsetClass structure holds the virtual functions for
a particular #PangoFontset implementation.
@parent_class: parent #GObjectClass.
@get_font: a function to get the font in the fontset that contains the
best glyph for the given Unicode character; see pango_fontset_get_font().
@get_metrics: a function to get overall metric information for the fonts
in the fontset; see pango_fontset_get_metrics().
@get_language: a function to get the language of the fontset.
@foreach: a function to loop over the fonts in the fontset. See
pango_fontset_foreach().
@fontset:
@wc:
@Returns:
@fontset:
@Returns:
@fontset:
@font:
@data:
@Returns:
@fontset:
@func:
@data:
#PangoFontsetSimple is a implementation of the abstract
#PangoFontset base class in terms of an array of fonts,
which the creator provides when constructing the
#PangoFontsetSimple.
The #GObject type for #PangoFontsetSimple.
@language:
@Returns:
@fontset:
@font:
@fontset:
@Returns: