gtkc.pangotypes

Undocumented in source.

Public Imports

gtkc.cairotypes
public import gtkc.cairotypes;
Undocumented in source.
gtkc.glibtypes
public import gtkc.glibtypes;
Undocumented in source.
gtkc.gobjecttypes
public import gtkc.gobjecttypes;
Undocumented in source.

Members

Aliases

FT_Face
alias FT_Face = void
Undocumented in source.
FcCharSet
alias FcCharSet = void
Undocumented in source.
FcPattern
alias FcPattern = void

* The pango Basic Types */

PangoAttrDataCopyFunc
alias PangoAttrDataCopyFunc = void* function(void* data)
Undocumented in source.
PangoAttrFilterFunc
alias PangoAttrFilterFunc = int function(PangoAttribute* attribute, void* data)
Undocumented in source.
PangoCairoShapeRendererFunc
alias PangoCairoShapeRendererFunc = void function(cairo_t* cr, PangoAttrShape* attr, int doPath, void* data)
Undocumented in source.
PangoFontsetForeachFunc
alias PangoFontsetForeachFunc = int function(PangoFontset* fontset, PangoFont* font, void* data)
Undocumented in source.
PangoGlyph
alias PangoGlyph = uint

typedef guint32 PangoGlyph; A PangoGlyph represents a single glyph in the output form of a string.

PangoGlyphUnit
alias PangoGlyphUnit = int

typedef gint32 PangoGlyphUnit; The PangoGlyphUnit type is used to store dimensions within Pango. Dimensions are stored in 1/PANGO_SCALE of a device unit. (A device unit might be a pixel for screen display, or a point on a printer.) PANGO_SCALE is currently 1024, and may change in the future (unlikely though), but you should not depend on its exact value. The PANGO_PIXELS() macro can be used to convert from glyph units into device units with correct rounding.

PangoLayoutRun
alias PangoLayoutRun = PangoGlyphItem

typedef PangoGlyphItem PangoLayoutRun; The PangoLayoutRun structure represents a single run within a PangoLayoutLine; it is simply an alternate name for PangoGlyphItem. See the PangoGlyphItem docs for details on the fields.

Enums

PangoAlignment
enum PangoAlignment

A PangoAlignment describes how to align the lines of a PangoLayout within the available space. If the PangoLayout is set to justify using pango_layout_set_justify(), this only has effect for partial lines. PANGO_ALIGN_LEFT Put all available space on the right PANGO_ALIGN_CENTER Center the line within the available space PANGO_ALIGN_RIGHT Put all available space on the left

PangoAttrType
enum PangoAttrType

The PangoAttrType distinguishes between different types of attributes. Along with the predefined values, it is possible to allocate additional values for custom attributes using pango_attr_type_register(). The predefined values are given below. The type of structure used to store the attribute is listed in parentheses after the description. PANGO_ATTR_INVALID does not happen PANGO_ATTR_LANGUAGE language (PangoAttrLanguage) PANGO_ATTR_FAMILY font family name list (PangoAttrString) PANGO_ATTR_STYLE font slant style (PangoAttrInt) PANGO_ATTR_WEIGHT font weight (PangoAttrInt) PANGO_ATTR_VARIANT font variant (normal or small caps) (PangoAttrInt) PANGO_ATTR_STRETCH font stretch (PangoAttrInt) PANGO_ATTR_SIZE font size in points scaled by PANGO_SCALE (PangoAttrInt) PANGO_ATTR_FONT_DESC font description (PangoAttrFontDesc) PANGO_ATTR_FOREGROUND foreground color (PangoAttrColor) PANGO_ATTR_BACKGROUND background color (PangoAttrColor) PANGO_ATTR_UNDERLINE whether the text has an underline (PangoAttrInt) PANGO_ATTR_STRIKETHROUGH whether the text is struck-through (PangoAttrInt) PANGO_ATTR_RISE baseline displacement (PangoAttrInt) PANGO_ATTR_SHAPE shape (PangoAttrShape) PANGO_ATTR_SCALE font size scale factor (PangoAttrFloat) PANGO_ATTR_FALLBACK whether fallback is enabled (PangoAttrInt) PANGO_ATTR_LETTER_SPACING letter spacing (PangoAttrInt) PANGO_ATTR_UNDERLINE_COLOR underline color (PangoAttrColor) PANGO_ATTR_STRIKETHROUGH_COLOR strikethrough color (PangoAttrColor) PANGO_ATTR_ABSOLUTE_SIZE font size in pixels scaled by PANGO_SCALE (PangoAttrInt) PANGO_ATTR_GRAVITY base text gravity (PangoAttrInt) PANGO_ATTR_GRAVITY_HINT gravity hint (PangoAttrInt)

PangoBidiType
enum PangoBidiType

The PangoBidiType type represents the bidirectional character type of a Unicode character as specified by the Unicode bidirectional algorithm. PANGO_BIDI_TYPE_L Left-to-Right PANGO_BIDI_TYPE_LRE Left-to-Right Embedding PANGO_BIDI_TYPE_LRO Left-to-Right Override PANGO_BIDI_TYPE_R Right-to-Left PANGO_BIDI_TYPE_AL Right-to-Left Arabic PANGO_BIDI_TYPE_RLE Right-to-Left Embedding PANGO_BIDI_TYPE_RLO Right-to-Left Override PANGO_BIDI_TYPE_PDF Pop Directional Format PANGO_BIDI_TYPE_EN European Number PANGO_BIDI_TYPE_ES European Number Separator PANGO_BIDI_TYPE_ET European Number Terminator PANGO_BIDI_TYPE_AN Arabic Number PANGO_BIDI_TYPE_CS Common Number Separator PANGO_BIDI_TYPE_NSM Nonspacing Mark PANGO_BIDI_TYPE_BN Boundary Neutral PANGO_BIDI_TYPE_B Paragraph Separator PANGO_BIDI_TYPE_S Segment Separator PANGO_BIDI_TYPE_WS Whitespace PANGO_BIDI_TYPE_ON Other Neutrals Since 1.22

PangoCoverageLevel
enum PangoCoverageLevel

Used to indicate how well a font can represent a particular Unicode character point for a particular script. PANGO_COVERAGE_NONE The character is not representable with the font. PANGO_COVERAGE_FALLBACK The character is represented in a way that may be comprehensible but is not the correct graphical form. For instance, a Hangul character represented as a a sequence of Jamos, or a Latin transliteration of a Cyrillic word. PANGO_COVERAGE_APPROXIMATE The character is represented as basically the correct graphical form, but with a stylistic variant inappropriate for the current script. PANGO_COVERAGE_EXACT The character is represented as the correct graphical form.

PangoDirection
enum PangoDirection

The PangoDirection type represents a direction in the Unicode bidirectional algorithm; not every value in this enumeration makes sense for every usage of PangoDirection; for example, the return value of pango_unichar_direction() and pango_find_base_dir() cannot be PANGO_DIRECTION_WEAK_LTR or PANGO_DIRECTION_WEAK_RTL, since every character is either neutral or has a strong direction; on the other hand PANGO_DIRECTION_NEUTRAL doesn't make sense to pass to pango_itemize_with_base_dir(). The PANGO_DIRECTION_TTB_LTR, PANGO_DIRECTION_TTB_RTL values come from an earlier interpretation of this enumeration as the writing direction of a block of text and are no longer used; See PangoGravity for how vertical text is handled in Pango. PANGO_DIRECTION_LTR A strong left-to-right direction PANGO_DIRECTION_RTL A strong right-to-left direction PANGO_DIRECTION_TTB_LTR Deprecated value; treated the same as PANGO_DIRECTION_RTL. PANGO_DIRECTION_TTB_RTL Deprecated value; treated the same as PANGO_DIRECTION_LTR PANGO_DIRECTION_WEAK_LTR A weak left-to-right direction PANGO_DIRECTION_WEAK_RTL A weak right-to-left direction PANGO_DIRECTION_NEUTRAL No direction specified

PangoEllipsizeMode
enum PangoEllipsizeMode

The PangoEllipsizeMode type describes what sort of (if any) ellipsization should be applied to a line of text. In the ellipsization process characters are removed from the text in order to make it fit to a given width and replaced with an ellipsis. PANGO_ELLIPSIZE_NONE No ellipsization PANGO_ELLIPSIZE_START Omit characters at the start of the text PANGO_ELLIPSIZE_MIDDLE Omit characters in the middle of the text PANGO_ELLIPSIZE_END Omit characters at the end of the text

PangoFontMask
enum PangoFontMask

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.)

PangoGravity
enum PangoGravity

The PangoGravity type represents the orientation of glyphs in a segment of text. This is useful when rendering vertical text layouts. In those situations, the layout is rotated using a non-identity PangoMatrix, and then glyph orientation is controlled using PangoGravity. Not every value in this enumeration makes sense for every usage of PangoGravity; for example, PANGO_GRAVITY_AUTO only can be passed to pango_context_set_base_gravity() and can only be returned by pango_context_get_base_gravity(). See also: PangoGravityHint PANGO_GRAVITY_SOUTH Glyphs stand upright (default) PANGO_GRAVITY_EAST Glyphs are rotated 90 degrees clockwise PANGO_GRAVITY_NORTH Glyphs are upside-down PANGO_GRAVITY_WEST Glyphs are rotated 90 degrees counter-clockwise PANGO_GRAVITY_AUTO Gravity is resolved from the context matrix Since 1.16

PangoGravityHint
enum PangoGravityHint

The PangoGravityHint defines how horizontal scripts should behave in a vertical context. That is, English excerpt in a vertical paragraph for example. See PangoGravity. PANGO_GRAVITY_HINT_NATURAL scripts will take their natural gravity based on the base gravity and the script. This is the default. PANGO_GRAVITY_HINT_STRONG always use the base gravity set, regardless of the script. PANGO_GRAVITY_HINT_LINE for scripts not in their natural direction (eg. Latin in East gravity), choose per-script gravity such that every script respects the line progression. This means, Latin and Arabic will take opposite gravities and both flow top-to-bottom for example. Since 1.16

PangoRenderPart
enum PangoRenderPart

PangoRenderPart defines different items to render for such purposes as setting colors. PANGO_RENDER_PART_FOREGROUND the text itself PANGO_RENDER_PART_BACKGROUND the area behind the text PANGO_RENDER_PART_UNDERLINE underlines PANGO_RENDER_PART_STRIKETHROUGH strikethrough lines Since 1.8

PangoScript
enum PangoScript

The PangoScript enumeration identifies different writing systems. The values correspond to the names as defined in the Unicode standard. Note that new types may be added in the future. Applications should be ready to handle unknown values. This enumeration is interchangeable with GUnicodeScript. See Unicode Standard Annex #24: Script names. PANGO_SCRIPT_INVALID_CODE a value never returned from pango_script_for_unichar() PANGO_SCRIPT_COMMON a character used by multiple different scripts PANGO_SCRIPT_INHERITED a mark glyph that takes its script from the base glyph to which it is attached PANGO_SCRIPT_ARABIC Arabic PANGO_SCRIPT_ARMENIAN Armenian PANGO_SCRIPT_BENGALI Bengali PANGO_SCRIPT_BOPOMOFO Bopomofo PANGO_SCRIPT_CHEROKEE Cherokee PANGO_SCRIPT_COPTIC Coptic PANGO_SCRIPT_CYRILLIC Cyrillic PANGO_SCRIPT_DESERET Deseret PANGO_SCRIPT_DEVANAGARI Devanagari PANGO_SCRIPT_ETHIOPIC Ethiopic PANGO_SCRIPT_GEORGIAN Georgian PANGO_SCRIPT_GOTHIC Gothic PANGO_SCRIPT_GREEK Greek PANGO_SCRIPT_GUJARATI Gujarati PANGO_SCRIPT_GURMUKHI Gurmukhi PANGO_SCRIPT_HAN Han PANGO_SCRIPT_HANGUL Hangul PANGO_SCRIPT_HEBREW Hebrew PANGO_SCRIPT_HIRAGANA Hiragana PANGO_SCRIPT_KANNADA Kannada PANGO_SCRIPT_KATAKANA Katakana PANGO_SCRIPT_KHMER Khmer PANGO_SCRIPT_LAO Lao PANGO_SCRIPT_LATIN Latin PANGO_SCRIPT_MALAYALAM Malayalam PANGO_SCRIPT_MONGOLIAN Mongolian PANGO_SCRIPT_MYANMAR Myanmar PANGO_SCRIPT_OGHAM Ogham PANGO_SCRIPT_OLD_ITALIC Old Italic PANGO_SCRIPT_ORIYA Oriya PANGO_SCRIPT_RUNIC Runic PANGO_SCRIPT_SINHALA Sinhala PANGO_SCRIPT_SYRIAC Syriac PANGO_SCRIPT_TAMIL Tamil PANGO_SCRIPT_TELUGU Telugu PANGO_SCRIPT_THAANA Thaana PANGO_SCRIPT_THAI Thai PANGO_SCRIPT_TIBETAN Tibetan PANGO_SCRIPT_CANADIAN_ABORIGINAL Canadian Aboriginal PANGO_SCRIPT_YI Yi PANGO_SCRIPT_TAGALOG Tagalog PANGO_SCRIPT_HANUNOO Hanunoo PANGO_SCRIPT_BUHID Buhid PANGO_SCRIPT_TAGBANWA Tagbanwa PANGO_SCRIPT_BRAILLE Braille PANGO_SCRIPT_CYPRIOT Cypriot PANGO_SCRIPT_LIMBU Limbu PANGO_SCRIPT_OSMANYA Osmanya PANGO_SCRIPT_SHAVIAN Shavian PANGO_SCRIPT_LINEAR_B Linear B PANGO_SCRIPT_TAI_LE Tai Le PANGO_SCRIPT_UGARITIC Ugaritic PANGO_SCRIPT_NEW_TAI_LUE New Tai Lue. Since 1.10 PANGO_SCRIPT_BUGINESE Buginese. Since 1.10 PANGO_SCRIPT_GLAGOLITIC Glagolitic. Since 1.10 PANGO_SCRIPT_TIFINAGH Tifinagh. Since 1.10 PANGO_SCRIPT_SYLOTI_NAGRI Syloti Nagri. Since 1.10 PANGO_SCRIPT_OLD_PERSIAN Old Persian. Since 1.10 PANGO_SCRIPT_KHAROSHTHI Kharoshthi. Since 1.10 PANGO_SCRIPT_UNKNOWN an unassigned code point. Since 1.14 PANGO_SCRIPT_BALINESE Balinese. Since 1.14 PANGO_SCRIPT_CUNEIFORM Cuneiform. Since 1.14 PANGO_SCRIPT_PHOENICIAN Phoenician. Since 1.14 PANGO_SCRIPT_PHAGS_PA Phags-pa. Since 1.14 PANGO_SCRIPT_NKO N'Ko. Since 1.14 PANGO_SCRIPT_KAYAH_LI Kayah Li. Since 1.20.1 PANGO_SCRIPT_LEPCHA Lepcha. Since 1.20.1 PANGO_SCRIPT_REJANG Rejang. Since 1.20.1 PANGO_SCRIPT_SUNDANESE Sundanese. Since 1.20.1 PANGO_SCRIPT_SAURASHTRA Saurashtra. Since 1.20.1 PANGO_SCRIPT_CHAM Cham. Since 1.20.1 PANGO_SCRIPT_OL_CHIKI Ol Chiki. Since 1.20.1 PANGO_SCRIPT_VAI Vai. Since 1.20.1 PANGO_SCRIPT_CARIAN Carian. Since 1.20.1 PANGO_SCRIPT_LYCIAN Lycian. Since 1.20.1 PANGO_SCRIPT_LYDIAN Lydian. Since 1.20.1

PangoStretch
enum PangoStretch

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

PangoStyle
enum PangoStyle

An enumeration specifying the various slant styles possible for a font. PANGO_STYLE_NORMAL the font is upright. PANGO_STYLE_OBLIQUE the font is slanted, but in a roman style. PANGO_STYLE_ITALIC the font is slanted in an italic style.

PangoTabAlign
enum PangoTabAlign

A PangoTabAlign specifies where a tab stop appears relative to the text. PANGO_TAB_LEFT the tab stop appears to the left of the text.

PangoUnderline
enum PangoUnderline

the PangoUnderline enumeration is used to specify whether text should be underlined, and if so, the type of underlining. PANGO_UNDERLINE_NONE no underline should be drawn PANGO_UNDERLINE_SINGLE a single underline should be drawn PANGO_UNDERLINE_DOUBLE a double underline should be drawn PANGO_UNDERLINE_LOW a single underline should be drawn at a position beneath the ink extents of the text being underlined. This should be used only for underlining single characters, such as for keyboard accelerators. PANGO_UNDERLINE_SINGLE should be used for extended portions of text. PANGO_UNDERLINE_ERROR a wavy underline should be drawn below. This underline is typically used to indicate an error such as a possilble mispelling; in some cases a contrasting color may automatically be used. This type of underlining is available since Pango 1.4.

PangoVariant
enum PangoVariant

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.

PangoWeight
enum 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: 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)

PangoWrapMode
enum PangoWrapMode

A PangoWrapMode describes how to wrap the lines of a PangoLayout to the desired width. PANGO_WRAP_WORD wrap lines at word boundaries. PANGO_WRAP_CHAR wrap lines at character boundaries. PANGO_WRAP_WORD_CHAR wrap lines at word boundaries, but fall back to character boundaries if there is not enough space for a full word.

Structs

PangoAnalysis
struct PangoAnalysis

The PangoAnalysis structure stores information about the properties of a segment of text. It has the following fields: PangoEngineShape *shape_engine; the engine for doing rendering-system-dependent processing. PangoEngineLang *lang_engine; the engine for doing rendering-system-independent processing. PangoFont *font; the font for this segment. guint8 level; the bidirectional level for this segment. guint8 gravity; the glyph orientation for this segment (A PangoGravity). guint8 flags; boolean flags for this segment (currently only one) (Since: 1.16). guint8 script; the detected script for this segment (A PangoScript) (Since: 1.18). PangoLanguage *language; the detected language for this segment. GSList *extra_attrs; extra attributes for this segment.

PangoAttrClass
struct PangoAttrClass

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. PangoAttrType type; the type ID for this attribute copy () function to duplicate an attribute of this type (see pango_attribute_copy()) destroy () function to free an attribute of this type (see pango_attribute_destroy()) equal () function to check two attributes of this type for equality (see pango_attribute_equal())

PangoAttrColor
struct PangoAttrColor

The PangoAttrColor structure is used to represent attributes that are colors. PangoAttribute attr; the common portion of the attribute PangoColor color; the PangoColor which is the value of the attribute

PangoAttrFloat
struct PangoAttrFloat

The PangoAttrFloat structure is used to represent attributes with a float or double value. PangoAttribute attr; the common portion of the attribute double value; the value of the attribute

PangoAttrFontDesc
struct PangoAttrFontDesc

The PangoAttrFontDesc structure is used to store an attribute that sets all aspects of the font description at once. PangoAttribute attr; the common portion of the attribute PangoFontDescription *desc; the font description which is the value of this attribute

PangoAttrInt
struct PangoAttrInt

The PangoAttrInt structure is used to represent attributes with an integer or enumeration value. PangoAttribute attr; the common portion of the attribute int value; the value of the attribute

PangoAttrIterator
struct PangoAttrIterator

The PangoAttrIterator structure is used to represent an iterator through a PangoAttrList. A new iterator is created with pango_attr_list_get_iterator(). Once the iterator is created, it can be advanced through the style changes in the text using pango_attr_iterator_next(). At each style change, the range of the current style segment and the attributes currently in effect can be queried.

PangoAttrLanguage
struct PangoAttrLanguage

The PangoAttrLanguage structure is used to represent attributes that are languages. PangoAttribute attr; the common portion of the attribute PangoLanguage *value; the PangoLanguage which is the value of the attribute

PangoAttrList
struct PangoAttrList

The PangoAttrList structure represents a list of attributes that apply to a section of text. The attributes are, in general, allowed to overlap in an arbitrary fashion, however, if the attributes are manipulated only through pango_attr_list_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.

PangoAttrShape
struct PangoAttrShape

The PangoAttrShape structure is used to represent attributes which impose shape restrictions. PangoAttribute attr; the common portion of the attribute PangoRectangle ink_rect; the ink rectangle to restrict to PangoRectangle logical_rect; the logical rectangle to restrict to gpointer data; user data set (see pango_attr_shape_new_with_data()) PangoAttrDataCopyFunc copy_func; copy function for the user data GDestroyNotify destroy_func; destroy function for the user data

PangoAttrSize
struct PangoAttrSize

The PangoAttrShape structure is used to represent attributes which set font size. PangoAttribute attr; the common portion of the attribute int size; size of font, in units of 1/PANGO_SCALE of a point (for

PangoAttrString
struct PangoAttrString

The PangoAttrString structure is used to represent attributes with a string value. PangoAttribute attr; the common portion of the attribute char *value; the string which is the value of the attribute

PangoAttribute
struct PangoAttribute

Main Gtk struct. 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 pango_attribute_init(). By default an attribute will have an all-inclusive range of [0,G_MAXUINT]. const PangoAttrClass *klass; the class structure holding information about the type of the attribute guint start_index; the start index of the range (in bytes). guint end_index; end index of the range (in bytes). The character at this index

PangoCairoFont
struct PangoCairoFont

PangoCairoFont is an interface exported by fonts for use with Cairo. The actual type of the font will depend on the particular font technology Cairo was compiled to use. Since 1.18

PangoCairoFontMap
struct PangoCairoFontMap

PangoCairoFontMap is an interface exported by font maps for use with Cairo. The actual type of the font map will depend on the particular font technology Cairo was compiled to use. Since 1.10

PangoColor
struct PangoColor

The PangoColor structure is used to represent a color in an uncalibrated RGB color-space. guint16 red; The red component of the color. This is a value between 0 and 65535,

PangoContext
struct PangoContext

Main Gtk struct. The PangoContext structure stores global information used to control the itemization process.

PangoCoverage
struct PangoCoverage

Main Gtk struct. The PangoCoverage structure represents a map from Unicode characters to PangoCoverageLevel. It is an opaque structure with no public fields.

PangoEngine
struct PangoEngine

Main Gtk struct. PangoEngine is the base class for all types of language and script specific engines. It has no functionality by itself.

PangoEngineClass
struct PangoEngineClass

Class structure for PangoEngine

PangoEngineInfo
struct PangoEngineInfo

The PangoEngineInfo structure contains information about a particular engine. It contains the following fields: const gchar *id; a unique string ID for the engine. const gchar *engine_type; a string identifying the engine type. const gchar *render_type; a string identifying the render type. PangoEngineScriptInfo *scripts; array of scripts this engine supports. gint n_scripts; number of items in scripts.

PangoEngineLang
struct PangoEngineLang

Main Gtk struct. The PangoEngineLang class is implemented by engines that customize the rendering-system independent part of the Pango pipeline for a particular script or language. For instance, a custom PangoEngineLang could be provided for Thai to implement the dictionary-based word boundary lookups needed for that language.

PangoEngineLangClass
struct PangoEngineLangClass

Class structure for PangoEngineLang script_break () Provides a custom implementation of pango_break(). If NULL, pango_default_break() is used instead. If not NULL, for Pango versions before 1.16 (module interface version before 1.6.0), this was called instead of pango_default_break(), but in newer versions, pango_default_break() is always called and this is called after that to allow tailoring the breaking results.

PangoEngineScriptInfo
struct PangoEngineScriptInfo

The PangoEngineScriptInfo structure contains information about how the shaper covers a particular script. PangoScript script; a PangoScript. The value PANGO_SCRIPT_COMMON has

PangoEngineShape
struct PangoEngineShape

Main Gtk struct. The PangoEngineShape class is implemented by engines that customize the rendering-system dependent part of the Pango pipeline for a particular script or language. A PangoEngineShape implementation is then specific to both a particular rendering system or group of rendering systems and to a particular script. For instance, there is one PangoEngineShape implementation to handle shaping Arabic for Fontconfig-based backends.

PangoEngineShapeClass
struct PangoEngineShapeClass

Class structure for PangoEngineShape script_shape () Given a font, a piece of text, and a PangoAnalysis

PangoFont
struct PangoFont

Main Gtk struct. 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.

PangoFontDescription
struct 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.

PangoFontFace
struct PangoFontFace

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

PangoFontFamily
struct 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.

PangoFontMap
struct 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 pango_font_map_init() on the structure. The PangoFontMap structure contains one member which the implementation fills in.

PangoFontMapClass
struct PangoFontMapClass

The PangoFontMapClass structure holds the virtual functions for a particular PangoFontMap implementation. GObjectClass parent_class; parent GObjectClass. load_font () a function to load a font with a given description. See

PangoFontMetrics
struct 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. guint ref_count; reference count. Used internally. See pango_font_metrics_ref()

PangoFontset
struct 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.

PangoFontsetClass
struct PangoFontsetClass

The PangoFontsetClass structure holds the virtual functions for a particular PangoFontset implementation. GObjectClass parent_class; parent GObjectClass. get_font () a function to get the font in the fontset that contains the

PangoFontsetSimple
struct PangoFontsetSimple

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.

PangoGlyphGeometry
struct PangoGlyphGeometry

The PangoGlyphGeometry structure contains width and positioning information for a single glyph. PangoGlyphUnit width; the logical width to use for the the character. PangoGlyphUnit x_offset; horizontal offset from nominal character position. PangoGlyphUnit y_offset; vertical offset from nominal character position.

PangoGlyphInfo
struct PangoGlyphInfo

The PangoGlyphInfo structure represents a single glyph together with positioning information and visual attributes. It contains the following fields. PangoGlyph glyph; the glyph itself. PangoGlyphGeometry geometry; the positional information about the glyph. PangoGlyphVisAttr attr; the visual attributes of the glyph.

PangoGlyphItem
struct PangoGlyphItem

A PangoGlyphItem is a pair of a PangoItem and the glyphs resulting from shaping the text corresponding to an item. 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. PangoItem *item; a PangoItem structure that provides information

PangoGlyphItemIter
struct PangoGlyphItemIter

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->item->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 of pango_glyph_item_iter_init_start() and 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,

PangoGlyphString
struct PangoGlyphString

The PangoGlyphString structure 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. gint num_glyphs; the number of glyphs in the string. PangoGlyphInfo *glyphs; an array of PangoGlyphInfo structures of length num_glyphs. gint *log_clusters; for each glyph, byte index of the starting character for the cluster. The indices are relative to the start of the text corresponding to the PangoGlyphString.

PangoGlyphVisAttr
struct PangoGlyphVisAttr

The PangoGlyphVisAttr is used to communicate information between the shaping phase and the rendering phase. More attributes may be added in the future. guint is_cluster_start : 1; set for the first logical glyph in each cluster. (Clusters

PangoItem
struct PangoItem

The PangoItem structure stores information about a segment of text. It contains the following fields: gint offset; the offset of the segment from the beginning of the

PangoLanguage
struct PangoLanguage

The PangoLanguage structure is used to represent a language. PangoLanguage pointers can be efficiently copied and compared with each other.

PangoLayout
struct PangoLayout

Main Gtk struct. The PangoLayout structure represents an entire paragraph of text. It 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 also a number of parameters to adjust the formatting of a PangoLayout, which are illustrated in Figure 1, “Adjustable parameters for a PangoLayout”. It is possible, as well, to ignore the 2-D setup, and simply treat the results of a PangoLayout as a list of lines. Figure 1. Adjustable parameters for a PangoLayout The PangoLayout structure is opaque, and has no user-visible fields.

PangoLayoutIter
struct PangoLayoutIter

A PangoLayoutIter structure can be used to iterate over the visual extents of a PangoLayout. The PangoLayoutIter structure is opaque, and has no user-visible fields.

PangoLayoutLine
struct PangoLayoutLine

The PangoLayoutLine structure represents one of the lines resulting from laying out a paragraph via PangoLayout. PangoLayoutLine structures are obtained by calling pango_layout_get_line() and are only valid until the text, attributes, or settings of the parent PangoLayout are modified. Routines for rendering PangoLayout objects are provided in code specific to each rendering system. PangoLayout *layout; the parent layout for this line gint start_index; the start of the line as byte index into layout->text gint length; the length of the line in bytes GSList *runs; a list containing the runs of the line in visual order guint is_paragraph_start : 1; TRUE if this is the first line of the paragraph guint resolved_dir : 3; the resolved PangoDirection of the line

PangoLogAttr
struct PangoLogAttr

The PangoLogAttr structure stores information about the attributes of a single character. guint is_line_break : 1; if set, can break line in front of character guint is_mandatory_break : 1; if set, must break line in front of character guint is_char_break : 1; if set, can break here when doing character wrapping guint is_white : 1; is whitespace character guint is_cursor_position : 1; if set, cursor can appear in front of character.

PangoMatrix
struct PangoMatrix

Main Gtk struct. A structure specifying a transformation between user-space coordinates and device coordinates. The transformation is given by x_device = x_user * matrix->xx + y_user * matrix->xy + matrix->x0; y_device = x_user * matrix->yx + y_user * matrix->yy + matrix->y0; double xx; 1st component of the transformation matrix double xy; 2nd component of the transformation matrix double yx; 3rd component of the transformation matrix double yy; 4th component of the transformation matrix double x0; x translation double y0; y translation Since 1.6

PangoRectangle
struct PangoRectangle

The PangoRectangle structure represents a rectangle. It is frequently used to represent the logical or ink extents of a single glyph or section of text. (See, for instance, pango_font_get_glyph_extents()) int x; X coordinate of the left side of the rectangle. int y; Y coordinate of the the top side of the rectangle. int width; width of the rectangle. int height; height of the rectangle.

PangoRenderer
struct PangoRenderer

Main Gtk struct. PangoRenderer is a base class for objects that are used to render Pango objects such as PangoGlyphString and PangoLayout. PangoMatrix *matrix; the current transformation matrix for the Renderer; may

PangoRendererClass
struct PangoRendererClass

Class structure for PangoRenderer. draw_glyphs () draws a PangoGlyphString draw_rectangle () draws a rectangle draw_error_underline () draws a squiggly line that approximately covers the given rectangle in the style of an underline used to indicate a spelling error. draw_shape () draw content for a glyph shaped with PangoAttrShape.

PangoScriptIter
struct PangoScriptIter

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

PangoTabArray
struct PangoTabArray

Main Gtk struct. A PangoTabArray struct contains an array of tab stops. Each tab stop has an alignment and a position.

Variables

PANGO_SCALE
int PANGO_SCALE;
Undocumented in source.
PANGO_SCALE_LARGE
double PANGO_SCALE_LARGE;

The scale factor for one magnification step (1.2)

PANGO_SCALE_MEDIUM
double PANGO_SCALE_MEDIUM;

The scale factor for normal size (1.0).

PANGO_SCALE_SMALL
double PANGO_SCALE_SMALL;

The scale factor for one shrinking step (1 / 1.2).

PANGO_SCALE_XX_LARGE
double PANGO_SCALE_XX_LARGE;

The scale factor for three magnification steps (1.2 * 1.2 * 1.2).

PANGO_SCALE_XX_SMALL
double PANGO_SCALE_XX_SMALL;

The scale factor for three shrinking steps (1 / (1.2 * 1.2 * 1.2)).

PANGO_SCALE_X_LARGE
double PANGO_SCALE_X_LARGE;

The scale factor for two magnification steps (1.2 * 1.2).

PANGO_SCALE_X_SMALL
double PANGO_SCALE_X_SMALL;

The scale factor for two shrinking steps (1 / (1.2 * 1.2)).

Meta