pango-Fonts {RGtk2} | R Documentation

## Fonts

### Description

Structures representing abstract fonts

### Methods and Functions

`pangoFontDescriptionNew()`
`pangoFontDescriptionCopy(object)`
`pangoFontDescriptionCopyStatic(object)`
`pangoFontDescriptionHash(object)`
`pangoFontDescriptionEqual(object, desc2)`
`pangoFontDescriptionSetFamily(object, family)`
`pangoFontDescriptionSetFamilyStatic(object, family)`
`pangoFontDescriptionGetFamily(object)`
`pangoFontDescriptionSetStyle(object, style)`
`pangoFontDescriptionGetStyle(object)`
`pangoFontDescriptionSetVariant(object, variant)`
`pangoFontDescriptionGetVariant(object)`
`pangoFontDescriptionSetWeight(object, weight)`
`pangoFontDescriptionGetWeight(object)`
`pangoFontDescriptionSetStretch(object, stretch)`
`pangoFontDescriptionGetStretch(object)`
`pangoFontDescriptionSetSize(object, size)`
`pangoFontDescriptionGetSize(object)`
`pangoFontDescriptionSetAbsoluteSize(object, size)`
`pangoFontDescriptionGetSizeIsAbsolute(object)`
`pangoFontDescriptionSetGravity(object, gravity)`
`pangoFontDescriptionGetGravity(object)`
`pangoFontDescriptionGetSetFields(object)`
`pangoFontDescriptionUnsetFields(object, to.unset)`
`pangoFontDescriptionMerge(object, desc.to.merge, replace.existing)`
`pangoFontDescriptionBetterMatch(object, old.match = NULL, new.match)`
`pangoFontDescriptionFromString(str)`
`pangoFontDescriptionToString(object)`
`pangoFontDescriptionToFilename(object)`
`pangoFontMetricsGetAscent(object)`
`pangoFontMetricsGetDescent(object)`
`pangoFontMetricsGetApproximateCharWidth(object)`
`pangoFontMetricsGetApproximateDigitWidth(object)`
`pangoFontMetricsGetUnderlineThickness(object)`
`pangoFontMetricsGetUnderlinePosition(object)`
`pangoFontMetricsGetStrikethroughThickness(object)`
`pangoFontMetricsGetStrikethroughPosition(object)`
`pangoFontDescribe(object)`
`pangoFontDescribeWithAbsoluteSize(object)`
`pangoFontGetCoverage(object, language)`
`pangoFontGetGlyphExtents(object, glyph)`
`pangoFontGetMetrics(object, language = NULL)`
`pangoFontGetFontMap(object)`
`pangoFontFamilyGetName(object)`
`pangoFontFamilyIsMonospace(object)`
`pangoFontFamilyListFaces(object)`
`pangoFontFaceGetFaceName(object)`
`pangoFontFaceListSizes(object)`
`pangoFontFaceDescribe(object)`
`pangoFontFaceIsSynthesized(object)`
`pangoFontMapCreateContext(object)`
`pangoFontMapLoadFont(object, context, desc)`
`pangoFontMapLoadFontset(object, context, desc, language)`
`pangoFontMapListFamilies(object)`
`pangoFontsetGetFont(object, wc)`
`pangoFontsetGetMetrics(object)`
`pangoFontsetForeach(object, func, data)`

### Hierarchy

    GObject
       +----PangoFont
             +----PangoFcFont
    GObject
       +----PangoFontFamily
    GObject
       +----PangoFontFace
    GObject
       +----PangoFontMap
             +----PangoFcFontMap
    GObject
       +----PangoFontset
             +----PangoFontsetSimple
    GObject
       +----PangoFontset
             +----PangoFontsetSimple

### Interface Derivations

PangoFont is required by `PangoCairoFont`. PangoFontMap is required by `PangoCairoFontMap`.

### Detailed Description

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.

### Structures

`PangoFontDescription`

  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.

`PangoFontMetrics`

  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`

    [numeric] reference count. Used internally. See `pangoFontMetricsRef()` and `pangoFontMetricsUnref()`.

  `ascent`

    [integer] the distance from the baseline to the highest point of the glyphs of the font. This is positive in practically all fonts.

  `descent`

    [integer] 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`

    [integer] approximate average width of the regular glyphs of the font. Note that for this calculation, East Asian characters (those passing `gUnicharIswide()`) 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`

    [integer] approximate average width of the glyphs for digits of the font.

  `underline_position`

    [integer] position of the underline. This is normally negative.

  `underline_thickness`

    [integer] thickness of the underline.

  `strikethrough_position`

    [integer] position of the strikethrough line. This is normally positive.

  `strikethrough_thickness`

    [integer] thickness of the strikethrough line.

`PangoFont`

  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 `pangoFontInit()` on the structure.

  The `PangoFont` structure contains one member which the implementation fills in.

`PangoFontFamily`

  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.

`PangoFontFace`

  The `PangoFontFace` structure is used to represent a group of fonts with the same family, slant, weight, width, but varying sizes.

`PangoFontMap`

  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 `pangoFontMapInit()` on the structure.

  The `PangoFontMap` structure contains one member which the implementation fills in.

`PangoFontset`

  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.

`PangoFontsetSimple`

  `PangoFontsetSimple` is a implementation of the abstract `PangoFontset` base class in terms of a list of fonts, which the creator provides when constructing the `PangoFontsetSimple`.

### Enums and Flags

`PangoStyle`

  An enumeration specifying the various slant styles possible for a font.

  `normal`

    the font is upright.

  `oblique`

    the font is slanted, but in a roman style.

  `italic`

    the font is slanted in an italic style.

`PangoWeight`

  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:

  `ultralight`

    the thin weight (= 100; Since: 1.24)

  `light`

    the ultralight weight (= 200)

  `normal`

    the light weight (= 300)

  `semibold`

    the book weight (= 380; Since: 1.24)

  `bold`

    the default weight (= 400)

  `ultrabold`

    the normal weight (= 500; Since: 1.24)

  `heavy`

    the semibold weight (= 600)

  `book`

    the bold weight (= 700)

  `ultraheavy`

    the ultrabold weight (= 800)

  `thin`

    the heavy weight (= 900)

  `medium`

    the ultraheavy weight (= 1000; Since: 1.24)

`PangoVariant`

  An enumeration specifying capitalization variant of the font.

  `normal`

    A normal font.

  `small-caps`

    A font with the lower case characters replaced by smaller variants of the capital characters.

`PangoStretch`

  An enumeration specifying the width of the font relative to other designs within a family.

  `ultra-condensed`

    ultra condensed width

  `extra-condensed`

    extra condensed width

  `condensed`

    condensed width

  `semi-condensed`

    semi condensed width

  `normal`

    the normal width

  `semi-expanded`

    semi expanded width

  `expanded`

    expanded width

  `extra-expanded`

    extra expanded width

  `ultra-expanded`

    ultra expanded width

`PangoFontMask`

  The bits in a `PangoFontMask` correspond to fields in a `PangoFontDescription` that have been set.

  `family`

    the font family is specified.

  `style`

    the font style is specified.

  `variant`

    the font variant is specified.

  `weight`

    the font weight is specified.

  `stretch`

    the font stretch is specified.

  `size`

    the font size is specified.

### User Functions

`PangoFontsetForeachFunc(fontset, font, data)`

  A callback function used by `pangoFontsetForeach` when enumerating the fonts in a fontset. Since 1.4

  `fontset`

    [`PangoFontset`] a `PangoFontset`

  `font`

    [`PangoFont`] a font from `fontset`

  `data`

    [R object] callback data

  Returns: [logical] if `TRUE`, stop iteration and return immediately.

### Author(s)

Derived by RGtkGen from GTK+ documentation

### References

https://docs.gtk.org/Pango/

[Package RGtk2 version 2.20.40 Index]