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_ULTRALIGHT: the ultralight weight (= 200) @PANGO_WEIGHT_LIGHT: the light weight (=300) @PANGO_WEIGHT_NORMAL: the default weight (= 400) @PANGO_WEIGHT_SEMIBOLD: a weight intermediate between normal and bold (=600) @PANGO_WEIGHT_BOLD: the bold weight (= 700) @PANGO_WEIGHT_ULTRABOLD: the ultrabold weight (= 800) @PANGO_WEIGHT_HEAVY: the heavy weight (= 900) 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. @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: @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: