Structures

The following structures are available globally.

Analysis Record

  • The PangoAnalysis structure stores information about the properties of a segment of text.

    The AnalysisRef type acts as a lightweight Swift reference to an underlying PangoAnalysis instance. It exposes methods that can operate on this data type through AnalysisProtocol conformance. Use AnalysisRef only as an unowned reference to an existing PangoAnalysis instance.

    See more

    Declaration

    Swift

    public struct AnalysisRef : AnalysisProtocol

AttrClass Record

  • The PangoAttrClass structure stores the type and operations for a particular type of attribute.

    The functions in this structure should not be called directly. Instead, one should use the wrapper functions provided for PangoAttribute.

    The AttrClassRef type acts as a lightweight Swift reference to an underlying PangoAttrClass instance. It exposes methods that can operate on this data type through AttrClassProtocol conformance. Use AttrClassRef only as an unowned reference to an existing PangoAttrClass instance.

    See more

    Declaration

    Swift

    public struct AttrClassRef : AttrClassProtocol

AttrColor Record

  • The PangoAttrColor structure is used to represent attributes that are colors.

    The AttrColorRef type acts as a lightweight Swift reference to an underlying PangoAttrColor instance. It exposes methods that can operate on this data type through AttrColorProtocol conformance. Use AttrColorRef only as an unowned reference to an existing PangoAttrColor instance.

    See more

    Declaration

    Swift

    public struct AttrColorRef : AttrColorProtocol

AttrFloat Record

  • The PangoAttrFloat structure is used to represent attributes with a float or double value.

    The AttrFloatRef type acts as a lightweight Swift reference to an underlying PangoAttrFloat instance. It exposes methods that can operate on this data type through AttrFloatProtocol conformance. Use AttrFloatRef only as an unowned reference to an existing PangoAttrFloat instance.

    See more

    Declaration

    Swift

    public struct AttrFloatRef : AttrFloatProtocol

AttrFontDesc Record

  • The PangoAttrFontDesc structure is used to store an attribute that sets all aspects of the font description at once.

    The AttrFontDescRef type acts as a lightweight Swift reference to an underlying PangoAttrFontDesc instance. It exposes methods that can operate on this data type through AttrFontDescProtocol conformance. Use AttrFontDescRef only as an unowned reference to an existing PangoAttrFontDesc instance.

    See more

    Declaration

    Swift

    public struct AttrFontDescRef : AttrFontDescProtocol

AttrFontFeatures Record

  • The PangoAttrFontFeatures structure is used to represent OpenType font features as an attribute.

    The AttrFontFeaturesRef type acts as a lightweight Swift reference to an underlying PangoAttrFontFeatures instance. It exposes methods that can operate on this data type through AttrFontFeaturesProtocol conformance. Use AttrFontFeaturesRef only as an unowned reference to an existing PangoAttrFontFeatures instance.

    See more

    Declaration

    Swift

    public struct AttrFontFeaturesRef : AttrFontFeaturesProtocol

AttrInt Record

  • The PangoAttrInt structure is used to represent attributes with an integer or enumeration value.

    The AttrIntRef type acts as a lightweight Swift reference to an underlying PangoAttrInt instance. It exposes methods that can operate on this data type through AttrIntProtocol conformance. Use AttrIntRef only as an unowned reference to an existing PangoAttrInt instance.

    See more

    Declaration

    Swift

    public struct AttrIntRef : AttrIntProtocol

AttrIterator Record

  • A PangoAttrIterator is used to iterate through a PangoAttrList.

    A new iterator is created with [methodPango.AttrList.get_iterator]. Once the iterator is created, it can be advanced through the style changes in the text using [methodPango.AttrIterator.next]. At each style change, the range of the current style segment and the attributes currently in effect can be queried.

    The AttrIteratorRef type acts as a lightweight Swift reference to an underlying PangoAttrIterator instance. It exposes methods that can operate on this data type through AttrIteratorProtocol conformance. Use AttrIteratorRef only as an unowned reference to an existing PangoAttrIterator instance.

    See more

    Declaration

    Swift

    public struct AttrIteratorRef : AttrIteratorProtocol

AttrLanguage Record

  • The PangoAttrLanguage structure is used to represent attributes that are languages.

    The AttrLanguageRef type acts as a lightweight Swift reference to an underlying PangoAttrLanguage instance. It exposes methods that can operate on this data type through AttrLanguageProtocol conformance. Use AttrLanguageRef only as an unowned reference to an existing PangoAttrLanguage instance.

    See more

    Declaration

    Swift

    public struct AttrLanguageRef : AttrLanguageProtocol

AttrList Record

  • A PangoAttrList represents a list of attributes that apply to a section of text.

    The attributes in a PangoAttrList are, in general, allowed to overlap in an arbitrary fashion. However, if the attributes are manipulated only through [methodPango.AttrList.change], the overlap between properties will meet stricter criteria.

    Since the PangoAttrList structure is stored as a linear list, it is not suitable for storing attributes for large amounts of text. In general, you should not use a single PangoAttrList for more than one paragraph of text.

    The AttrListRef type acts as a lightweight Swift reference to an underlying PangoAttrList instance. It exposes methods that can operate on this data type through AttrListProtocol conformance. Use AttrListRef only as an unowned reference to an existing PangoAttrList instance.

    See more

    Declaration

    Swift

    public struct AttrListRef : AttrListProtocol

AttrShape Record

  • The PangoAttrShape structure is used to represent attributes which impose shape restrictions.

    The AttrShapeRef type acts as a lightweight Swift reference to an underlying PangoAttrShape instance. It exposes methods that can operate on this data type through AttrShapeProtocol conformance. Use AttrShapeRef only as an unowned reference to an existing PangoAttrShape instance.

    See more

    Declaration

    Swift

    public struct AttrShapeRef : AttrShapeProtocol

AttrSize Record

  • The PangoAttrSize structure is used to represent attributes which set font size.

    The AttrSizeRef type acts as a lightweight Swift reference to an underlying PangoAttrSize instance. It exposes methods that can operate on this data type through AttrSizeProtocol conformance. Use AttrSizeRef only as an unowned reference to an existing PangoAttrSize instance.

    See more

    Declaration

    Swift

    public struct AttrSizeRef : AttrSizeProtocol

AttrString Record

  • The PangoAttrString structure is used to represent attributes with a string value.

    The AttrStringRef type acts as a lightweight Swift reference to an underlying PangoAttrString instance. It exposes methods that can operate on this data type through AttrStringProtocol conformance. Use AttrStringRef only as an unowned reference to an existing PangoAttrString instance.

    See more

    Declaration

    Swift

    public struct AttrStringRef : AttrStringProtocol

Attribute Record

  • The PangoAttribute structure represents the common portions of all attributes.

    Particular types of attributes include this structure as their initial portion. The common portion of the attribute holds the range to which the value in the type-specific part of the attribute applies and should be initialized using [methodPango.Attribute.init]. By default, an attribute will have an all-inclusive range of [0,G_MAXUINT].

    The AttributeRef type acts as a lightweight Swift reference to an underlying PangoAttribute instance. It exposes methods that can operate on this data type through AttributeProtocol conformance. Use AttributeRef only as an unowned reference to an existing PangoAttribute instance.

    See more

    Declaration

    Swift

    public struct AttributeRef : AttributeProtocol

Context Class

  • A PangoContext stores global information used to control the itemization process.

    The information stored by PangoContext includes the fontmap used to look up fonts, and default values such as the default language, default gravity, or default font.

    To obtain a PangoContext, use [methodPango.FontMap.create_context].

    The ContextRef type acts as a lightweight Swift reference to an underlying PangoContext instance. It exposes methods that can operate on this data type through ContextProtocol conformance. Use ContextRef only as an unowned reference to an existing PangoContext instance.

    See more

    Declaration

    Swift

    public struct ContextRef : ContextProtocol, GWeakCapturing

Coverage Class

  • A PangoCoverage structure is a map from Unicode characters to [enumPango.CoverageLevel] values.

    It is often necessary in Pango to determine if a particular font can represent a particular character, and also how well it can represent that character. The PangoCoverage is a data structure that is used to represent that information. It is an opaque structure with no public fields.

    The CoverageRef type acts as a lightweight Swift reference to an underlying PangoCoverage instance. It exposes methods that can operate on this data type through CoverageProtocol conformance. Use CoverageRef only as an unowned reference to an existing PangoCoverage instance.

    See more

    Declaration

    Swift

    public struct CoverageRef : CoverageProtocol, GWeakCapturing

Color Record

  • The PangoColor structure is used to represent a color in an uncalibrated RGB color-space.

    The ColorRef type acts as a lightweight Swift reference to an underlying PangoColor instance. It exposes methods that can operate on this data type through ColorProtocol conformance. Use ColorRef only as an unowned reference to an existing PangoColor instance.

    See more

    Declaration

    Swift

    public struct ColorRef : ColorProtocol

ContextClass Record

  • The ContextClassRef type acts as a lightweight Swift reference to an underlying PangoContextClass instance. It exposes methods that can operate on this data type through ContextClassProtocol conformance. Use ContextClassRef only as an unowned reference to an existing PangoContextClass instance.

    See more

    Declaration

    Swift

    public struct ContextClassRef : ContextClassProtocol

Font Class

  • A PangoFont is used to represent a font in a rendering-system-independent manner.

    The FontRef type acts as a lightweight Swift reference to an underlying PangoFont instance. It exposes methods that can operate on this data type through FontProtocol conformance. Use FontRef only as an unowned reference to an existing PangoFont instance.

    See more

    Declaration

    Swift

    public struct FontRef : FontProtocol, GWeakCapturing

FontFace Class

  • A PangoFontFace is used to represent a group of fonts with the same family, slant, weight, and width, but varying sizes.

    The FontFaceRef type acts as a lightweight Swift reference to an underlying PangoFontFace instance. It exposes methods that can operate on this data type through FontFaceProtocol conformance. Use FontFaceRef only as an unowned reference to an existing PangoFontFace instance.

    See more

    Declaration

    Swift

    public struct FontFaceRef : FontFaceProtocol, GWeakCapturing

FontClass Record

  • The FontClassRef type acts as a lightweight Swift reference to an underlying PangoFontClass instance. It exposes methods that can operate on this data type through FontClassProtocol conformance. Use FontClassRef only as an unowned reference to an existing PangoFontClass instance.

    See more

    Declaration

    Swift

    public struct FontClassRef : FontClassProtocol

FontFamily Class

  • A PangoFontFamily is used to represent a family of related font faces.

    The font faces in a family share a common design, but differ in slant, weight, width or other aspects.

    The FontFamilyRef type acts as a lightweight Swift reference to an underlying PangoFontFamily instance. It exposes methods that can operate on this data type through FontFamilyProtocol conformance. Use FontFamilyRef only as an unowned reference to an existing PangoFontFamily instance.

    See more

    Declaration

    Swift

    public struct FontFamilyRef : FontFamilyProtocol, GWeakCapturing

FontMap Class

  • A 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.

    The FontMapRef type acts as a lightweight Swift reference to an underlying PangoFontMap instance. It exposes methods that can operate on this data type through FontMapProtocol conformance. Use FontMapRef only as an unowned reference to an existing PangoFontMap instance.

    See more

    Declaration

    Swift

    public struct FontMapRef : FontMapProtocol, GWeakCapturing

Fontset Class

  • A PangoFontset represents a set of PangoFont to use when rendering text.

    A PangoFontset 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 FontsetRef type acts as a lightweight Swift reference to an underlying PangoFontset instance. It exposes methods that can operate on this data type through FontsetProtocol conformance. Use FontsetRef only as an unowned reference to an existing PangoFontset instance.

    See more

    Declaration

    Swift

    public struct FontsetRef : FontsetProtocol, GWeakCapturing

FontsetSimple Class

  • PangoFontsetSimple is a implementation of the abstract PangoFontset base class as an array of fonts.

    When creating a PangoFontsetSimple, you have to provide the array of fonts that make up the fontset.

    The FontsetSimpleRef type acts as a lightweight Swift reference to an underlying PangoFontsetSimple instance. It exposes methods that can operate on this data type through FontsetSimpleProtocol conformance. Use FontsetSimpleRef only as an unowned reference to an existing PangoFontsetSimple instance.

    See more

    Declaration

    Swift

    public struct FontsetSimpleRef : FontsetSimpleProtocol, GWeakCapturing

FontDescription Record

  • A PangoFontDescription describes a font in an implementation-independent manner.

    PangoFontDescription 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 FontDescriptionRef type acts as a lightweight Swift reference to an underlying PangoFontDescription instance. It exposes methods that can operate on this data type through FontDescriptionProtocol conformance. Use FontDescriptionRef only as an unowned reference to an existing PangoFontDescription instance.

    See more

    Declaration

    Swift

    public struct FontDescriptionRef : FontDescriptionProtocol

FontFaceClass Record

  • The FontFaceClassRef type acts as a lightweight Swift reference to an underlying PangoFontFaceClass instance. It exposes methods that can operate on this data type through FontFaceClassProtocol conformance. Use FontFaceClassRef only as an unowned reference to an existing PangoFontFaceClass instance.

    See more

    Declaration

    Swift

    public struct FontFaceClassRef : FontFaceClassProtocol

FontFamilyClass Record

  • The FontFamilyClassRef type acts as a lightweight Swift reference to an underlying PangoFontFamilyClass instance. It exposes methods that can operate on this data type through FontFamilyClassProtocol conformance. Use FontFamilyClassRef only as an unowned reference to an existing PangoFontFamilyClass instance.

    See more

    Declaration

    Swift

    public struct FontFamilyClassRef : FontFamilyClassProtocol

FontMapClass Record

  • The PangoFontMapClass structure holds the virtual functions for a particular PangoFontMap implementation.

    The FontMapClassRef type acts as a lightweight Swift reference to an underlying PangoFontMapClass instance. It exposes methods that can operate on this data type through FontMapClassProtocol conformance. Use FontMapClassRef only as an unowned reference to an existing PangoFontMapClass instance.

    See more

    Declaration

    Swift

    public struct FontMapClassRef : FontMapClassProtocol

FontMetrics Record

  • A PangoFontMetrics structure holds the overall metric information for a font.

    The information in a PangoFontMetrics structure may be 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.

    For an overview of the most important metrics, see:

    <picture> <source srcset=“fontmetrics-dark.png” media=“(prefers-color-scheme: dark)”> <img alt=“Font metrics” src=“fontmetrics-light.png”> </picture>

    The FontMetricsRef type acts as a lightweight Swift reference to an underlying PangoFontMetrics instance. It exposes methods that can operate on this data type through FontMetricsProtocol conformance. Use FontMetricsRef only as an unowned reference to an existing PangoFontMetrics instance.

    See more

    Declaration

    Swift

    public struct FontMetricsRef : FontMetricsProtocol

FontsetClass Record

  • The PangoFontsetClass structure holds the virtual functions for a particular PangoFontset implementation.

    The FontsetClassRef type acts as a lightweight Swift reference to an underlying PangoFontsetClass instance. It exposes methods that can operate on this data type through FontsetClassProtocol conformance. Use FontsetClassRef only as an unowned reference to an existing PangoFontsetClass instance.

    See more

    Declaration

    Swift

    public struct FontsetClassRef : FontsetClassProtocol

FontsetSimpleClass Record

GlyphGeometry Record

  • The PangoGlyphGeometry structure contains width and positioning information for a single glyph.

    Note that width is not guaranteed to be the same as the glyph extents. Kerning and other positioning applied during shaping will affect both the width and the x_offset for the glyphs in the glyph string that results from shaping.

    The information in this struct is intended for rendering the glyphs, as follows:

    1. Assume the current point is (x, y)
    2. Render the current glyph at (x + x_offset, y + y_offset),
    3. Advance the current point to (x + width, y)
    4. Render the next glyph

    The GlyphGeometryRef type acts as a lightweight Swift reference to an underlying PangoGlyphGeometry instance. It exposes methods that can operate on this data type through GlyphGeometryProtocol conformance. Use GlyphGeometryRef only as an unowned reference to an existing PangoGlyphGeometry instance.

    See more

    Declaration

    Swift

    public struct GlyphGeometryRef : GlyphGeometryProtocol

GlyphInfo Record

  • A PangoGlyphInfo structure represents a single glyph with positioning information and visual attributes.

    The GlyphInfoRef type acts as a lightweight Swift reference to an underlying PangoGlyphInfo instance. It exposes methods that can operate on this data type through GlyphInfoProtocol conformance. Use GlyphInfoRef only as an unowned reference to an existing PangoGlyphInfo instance.

    See more

    Declaration

    Swift

    public struct GlyphInfoRef : GlyphInfoProtocol

GlyphItem Record

  • A PangoGlyphItem is a pair of a PangoItem and the glyphs resulting from shaping the items text.

    As an example of the usage of PangoGlyphItem, the results of shaping text with PangoLayout is a list of PangoLayoutLine, each of which contains a list of PangoGlyphItem.

    The GlyphItemRef type acts as a lightweight Swift reference to an underlying PangoGlyphItem instance. It exposes methods that can operate on this data type through GlyphItemProtocol conformance. Use GlyphItemRef only as an unowned reference to an existing PangoGlyphItem instance.

    See more

    Declaration

    Swift

    public struct GlyphItemRef : GlyphItemProtocol

GlyphItemIter Record

  • A PangoGlyphItemIter is an iterator over the clusters in a PangoGlyphItem.

    The forward direction of the iterator is the logical direction of text. That is, with increasing start_index and start_char values. If glyph_item is right-to-left (that is, if glyph_item-&gt;item-&gt;analysis.level is odd), then start_glyph decreases as the iterator moves forward. Moreover, in right-to-left cases, start_glyph is greater than end_glyph.

    An iterator should be initialized using either pango_glyph_item_iter_init_start() or pango_glyph_item_iter_init_end(), for forward and backward iteration respectively, and walked over using any desired mixture of pango_glyph_item_iter_next_cluster() and pango_glyph_item_iter_prev_cluster().

    A common idiom for doing a forward iteration over the clusters is:

    PangoGlyphItemIter cluster_iter;
    gboolean have_cluster;
    
    for (have_cluster = pango_glyph_item_iter_init_start (&cluster_iter,
                                                          glyph_item, text);
         have_cluster;
         have_cluster = pango_glyph_item_iter_next_cluster (&cluster_iter))
    {
      ...
    }
    

    Note that text is the start of the text for layout, which is then indexed by glyph_item-&gt;item-&gt;offset to get to the text of glyph_item. The start_index and end_index values can directly index into text. The start_glyph, end_glyph, start_char, and end_char values however are zero-based for the glyph_item. For each cluster, the item pointed at by the start variables is included in the cluster while the one pointed at by end variables is not.

    None of the members of a PangoGlyphItemIter should be modified manually.

    The GlyphItemIterRef type acts as a lightweight Swift reference to an underlying PangoGlyphItemIter instance. It exposes methods that can operate on this data type through GlyphItemIterProtocol conformance. Use GlyphItemIterRef only as an unowned reference to an existing PangoGlyphItemIter instance.

    See more

    Declaration

    Swift

    public struct GlyphItemIterRef : GlyphItemIterProtocol

GlyphString Record

  • A PangoGlyphString is used to store strings of glyphs with geometry and visual attribute information.

    The storage for the glyph information is owned by the structure which simplifies memory management.

    The GlyphStringRef type acts as a lightweight Swift reference to an underlying PangoGlyphString instance. It exposes methods that can operate on this data type through GlyphStringProtocol conformance. Use GlyphStringRef only as an unowned reference to an existing PangoGlyphString instance.

    See more

    Declaration

    Swift

    public struct GlyphStringRef : GlyphStringProtocol

GlyphVisAttr Record

  • A PangoGlyphVisAttr structure communicates information between the shaping and rendering phases.

    Currently, it contains cluster start and color information. More attributes may be added in the future.

    Clusters are stored in visual order, within the cluster, glyphs are always ordered in logical order, since visual order is meaningless; that is, in Arabic text, accent glyphs follow the glyphs for the base character.

    The GlyphVisAttrRef type acts as a lightweight Swift reference to an underlying PangoGlyphVisAttr instance. It exposes methods that can operate on this data type through GlyphVisAttrProtocol conformance. Use GlyphVisAttrRef only as an unowned reference to an existing PangoGlyphVisAttr instance.

    See more

    Declaration

    Swift

    public struct GlyphVisAttrRef : GlyphVisAttrProtocol

Item Record

  • The PangoItem structure stores information about a segment of text.

    You typically obtain PangoItems by itemizing a piece of text with [funcitemize].

    The ItemRef type acts as a lightweight Swift reference to an underlying PangoItem instance. It exposes methods that can operate on this data type through ItemProtocol conformance. Use ItemRef only as an unowned reference to an existing PangoItem instance.

    See more

    Declaration

    Swift

    public struct ItemRef : ItemProtocol

Layout Class

  • A PangoLayout structure represents an entire paragraph of text.

    While complete access to the layout capabilities of Pango is provided using the detailed interfaces for itemization and shaping, using that functionality directly involves writing a fairly large amount of code. PangoLayout provides a high-level driver for formatting entire paragraphs of text at once. This includes paragraph-level functionality such as line breaking, justification, alignment and ellipsization.

    A PangoLayout is initialized with a PangoContext, UTF-8 string and set of attributes for that string. Once that is done, the set of formatted lines can be extracted from the object, the layout can be rendered, and conversion between logical character positions within the layout’s text, and the physical position of the resulting glyphs can be made.

    There are a number of parameters to adjust the formatting of a PangoLayout. The following image shows adjustable parameters (on the left) and font metrics (on the right):

    <picture> <source srcset=“layout-dark.png” media=“(prefers-color-scheme: dark)”> <img alt=“Pango Layout Parameters” src=“layout-light.png”> </picture>

    The following images demonstrate the effect of alignment and justification on the layout of text:

    align=left align=left, justify
    align=center align=center, justify
    align=right align=right, justify

    It is possible, as well, to ignore the 2-D setup, and simply treat the results of a PangoLayout as a list of lines.

    The LayoutRef type acts as a lightweight Swift reference to an underlying PangoLayout instance. It exposes methods that can operate on this data type through LayoutProtocol conformance. Use LayoutRef only as an unowned reference to an existing PangoLayout instance.

    See more

    Declaration

    Swift

    public struct LayoutRef : LayoutProtocol, GWeakCapturing

Language Record

  • The PangoLanguage structure is used to represent a language.

    PangoLanguage pointers can be efficiently copied and compared with each other.

    The LanguageRef type acts as a lightweight Swift reference to an underlying PangoLanguage instance. It exposes methods that can operate on this data type through LanguageProtocol conformance. Use LanguageRef only as an unowned reference to an existing PangoLanguage instance.

    See more

    Declaration

    Swift

    public struct LanguageRef : LanguageProtocol

LayoutClass Record

  • The LayoutClassRef type acts as a lightweight Swift reference to an underlying PangoLayoutClass instance. It exposes methods that can operate on this data type through LayoutClassProtocol conformance. Use LayoutClassRef only as an unowned reference to an existing PangoLayoutClass instance.

    See more

    Declaration

    Swift

    public struct LayoutClassRef : LayoutClassProtocol

LayoutIter Record

  • A PangoLayoutIter can be used to iterate over the visual extents of a PangoLayout.

    To obtain a PangoLayoutIter, use [methodPango.Layout.get_iter].

    The PangoLayoutIter structure is opaque, and has no user-visible fields.

    The LayoutIterRef type acts as a lightweight Swift reference to an underlying PangoLayoutIter instance. It exposes methods that can operate on this data type through LayoutIterProtocol conformance. Use LayoutIterRef only as an unowned reference to an existing PangoLayoutIter instance.

    See more

    Declaration

    Swift

    public struct LayoutIterRef : LayoutIterProtocol

LayoutLine Record

  • A PangoLayoutLine represents one of the lines resulting from laying out a paragraph via PangoLayout.

    PangoLayoutLine structures are obtained by calling [methodPango.Layout.get_line] and are only valid until the text, attributes, or settings of the parent PangoLayout are modified.

    The LayoutLineRef type acts as a lightweight Swift reference to an underlying PangoLayoutLine instance. It exposes methods that can operate on this data type through LayoutLineProtocol conformance. Use LayoutLineRef only as an unowned reference to an existing PangoLayoutLine instance.

    See more

    Declaration

    Swift

    public struct LayoutLineRef : LayoutLineProtocol

LogAttr Record

  • The PangoLogAttr structure stores information about the attributes of a single character.

    The LogAttrRef type acts as a lightweight Swift reference to an underlying PangoLogAttr instance. It exposes methods that can operate on this data type through LogAttrProtocol conformance. Use LogAttrRef only as an unowned reference to an existing PangoLogAttr instance.

    See more

    Declaration

    Swift

    public struct LogAttrRef : LogAttrProtocol

Matrix Record

  • A PangoMatrix specifies a transformation between user-space and device coordinates.

    The transformation is given by

    x_device = x_user * matrix-&gt;xx + y_user * matrix-&gt;xy + matrix-&gt;x0;
    y_device = x_user * matrix-&gt;yx + y_user * matrix-&gt;yy + matrix-&gt;y0;
    

    The MatrixRef type acts as a lightweight Swift reference to an underlying PangoMatrix instance. It exposes methods that can operate on this data type through MatrixProtocol conformance. Use MatrixRef only as an unowned reference to an existing PangoMatrix instance.

    See more

    Declaration

    Swift

    public struct MatrixRef : MatrixProtocol

Renderer Class

  • PangoRenderer is a base class for objects that can render text provided as PangoGlyphString or PangoLayout.

    By subclassing PangoRenderer and overriding operations such as draw_glyphs and draw_rectangle, renderers for particular font backends and destinations can be created.

    The RendererRef type acts as a lightweight Swift reference to an underlying PangoRenderer instance. It exposes methods that can operate on this data type through RendererProtocol conformance. Use RendererRef only as an unowned reference to an existing PangoRenderer instance.

    See more

    Declaration

    Swift

    public struct RendererRef : RendererProtocol, GWeakCapturing

Rectangle Record

  • The PangoRectangle structure represents a rectangle.

    PangoRectangle is frequently used to represent the logical or ink extents of a single glyph or section of text. (See, for instance, [methodPango.Font.get_glyph_extents].)

    The RectangleRef type acts as a lightweight Swift reference to an underlying PangoRectangle instance. It exposes methods that can operate on this data type through RectangleProtocol conformance. Use RectangleRef only as an unowned reference to an existing PangoRectangle instance.

    See more

    Declaration

    Swift

    public struct RectangleRef : RectangleProtocol

RendererClass Record

  • Class structure for PangoRenderer.

    The following vfuncs take user space coordinates in Pango units and have default implementations:

    • draw_glyphs
    • draw_rectangle
    • draw_error_underline
    • draw_shape
    • draw_glyph_item

    The default draw_shape implementation draws nothing.

    The following vfuncs take device space coordinates as doubles and must be implemented:

    • draw_trapezoid
    • draw_glyph

    The RendererClassRef type acts as a lightweight Swift reference to an underlying PangoRendererClass instance. It exposes methods that can operate on this data type through RendererClassProtocol conformance. Use RendererClassRef only as an unowned reference to an existing PangoRendererClass instance.

    See more

    Declaration

    Swift

    public struct RendererClassRef : RendererClassProtocol

ScriptIter Record

  • A PangoScriptIter is used to iterate through a string and identify ranges in different scripts.

    The ScriptIterRef type acts as a lightweight Swift reference to an underlying PangoScriptIter instance. It exposes methods that can operate on this data type through ScriptIterProtocol conformance. Use ScriptIterRef only as an unowned reference to an existing PangoScriptIter instance.

    See more

    Declaration

    Swift

    public struct ScriptIterRef : ScriptIterProtocol

TabArray Record

  • A PangoTabArray contains an array of tab stops.

    PangoTabArray can be used to set tab stops in a PangoLayout. Each tab stop has an alignment, a position, and optionally a character to use as decimal point.

    The TabArrayRef type acts as a lightweight Swift reference to an underlying PangoTabArray instance. It exposes methods that can operate on this data type through TabArrayProtocol conformance. Use TabArrayRef only as an unowned reference to an existing PangoTabArray instance.

    See more

    Declaration

    Swift

    public struct TabArrayRef : TabArrayProtocol
  • The bits in a PangoFontMask correspond to the set fields in a PangoFontDescription.

    See more

    Declaration

    Swift

    public struct FontMask : OptionSet
  • Flags that influence the behavior of [funcPango.Layout.deserialize].

    New members may be added to this enumeration over time.

    See more

    Declaration

    Swift

    public struct LayoutDeserializeFlags : OptionSet
  • Flags that influence the behavior of [methodPango.Layout.serialize].

    New members may be added to this enumeration over time.

    See more

    Declaration

    Swift

    public struct LayoutSerializeFlags : OptionSet
  • Flags influencing the shaping process.

    PangoShapeFlags can be passed to [funcPango.shape_with_flags].

    See more

    Declaration

    Swift

    public struct ShapeFlags : OptionSet
  • These flags affect how Pango treats characters that are normally not visible in the output.

    See more

    Declaration

    Swift

    public struct ShowFlags : OptionSet