pangomm: pangomm Enums and Flags

pangomm 2.46.5

Enumerations | Functions
pangomm Enums and Flags

## Enumerations
enum | Pango::AttrType { Pango::ATTR_INVALID , Pango::ATTR_LANGUAGE , Pango::ATTR_FAMILY , Pango::ATTR_STYLE , Pango::ATTR_WEIGHT , Pango::ATTR_VARIANT , Pango::ATTR_STRETCH , Pango::ATTR_SIZE , Pango::ATTR_FONT_DESC , Pango::ATTR_FOREGROUND , Pango::ATTR_BACKGROUND , Pango::ATTR_UNDERLINE , Pango::ATTR_STRIKETHROUGH , Pango::ATTR_RISE , Pango::ATTR_SHAPE , Pango::ATTR_SCALE , Pango::ATTR_FALLBACK , Pango::ATTR_LETTER_SPACING , Pango::ATTR_UNDERLINE_COLOR , Pango::ATTR_STRIKETHROUGH_COLOR , Pango::ATTR_ABSOLUTE_SIZE , Pango::ATTR_GRAVITY , Pango::ATTR_GRAVITY_HINT , Pango::ATTR_FONT_FEATURES , Pango::ATTR_FOREGROUND_ALPHA , Pango::ATTR_BACKGROUND_ALPHA , Pango::ATTR_ALLOW_BREAKS , Pango::ATTR_SHOW , Pango::ATTR_INSERT_HYPHENS , Pango::ATTR_OVERLINE , Pango::ATTR_OVERLINE_COLOR }
| The Pango::AttrType distinguishes between different types of attributes. More...
enum | Pango::Underline { Pango::UNDERLINE_NONE , Pango::UNDERLINE_SINGLE , Pango::UNDERLINE_DOUBLE , Pango::UNDERLINE_LOW , Pango::UNDERLINE_ERROR , Pango::UNDERLINE_SINGLE_LINE , Pango::UNDERLINE_DOUBLE_LINE , Pango::UNDERLINE_ERROR_LINE }
| The Pango::Underline enumeration is used to specify whether text should be underlined, and if so, the type of underlining. More...
enum | Pango::Overline { Pango::OVERLINE_NONE , Pango::OVERLINE_SINGLE }
| The Pango::Overline enumeration is used to specify whether text should be overlined, and if so, the type of line. More...
enum | Pango::ShowFlags { Pango::SHOW_NONE = 0x0 , Pango::SHOW_SPACES = 1 << 0 , Pango::SHOW_LINE_BREAKS = 1 << 1 , Pango::SHOW_IGNORABLES = 1 << 2 }
| These flags affect how Pango treats characters that are normally not visible in the output. More...
enum | Pango::Direction { Pango::DIRECTION_LTR , Pango::DIRECTION_RTL , Pango::DIRECTION_TTB_LTR , Pango::DIRECTION_TTB_RTL , Pango::DIRECTION_WEAK_LTR , Pango::DIRECTION_WEAK_RTL , Pango::DIRECTION_NEUTRAL }
| The Pango::Direction type represents a direction in the Unicode bidirectional algorithm; not every value in this enumeration makes sense for every usage of Pango::Direction; 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(). More...
enum | Pango::GravityHint { Pango::GRAVITY_HINT_NATURAL , Pango::GRAVITY_HINT_STRONG , Pango::GRAVITY_HINT_LINE }
| The Pango::GravityHint defines how horizontal scripts should behave in a vertical context. More...
enum | Pango::CoverageLevel { Pango::COVERAGE_NONE , Pango::COVERAGE_FALLBACK , Pango::COVERAGE_APPROXIMATE , Pango::COVERAGE_EXACT }
| Used to indicate how well a font can represent a particular Unicode character point for a particular script. More...
enum | Pango::Style { Pango::STYLE_NORMAL , Pango::STYLE_OBLIQUE , Pango::STYLE_ITALIC }
| An enumeration specifying the various slant styles possible for a font. More...
enum | Pango::Variant { Pango::VARIANT_NORMAL , Pango::VARIANT_SMALL_CAPS }
| An enumeration specifying capitalization variant of the font. More...
enum | Pango::Stretch { Pango::STRETCH_ULTRA_CONDENSED , Pango::STRETCH_EXTRA_CONDENSED , Pango::STRETCH_CONDENSED , Pango::STRETCH_SEMI_CONDENSED , Pango::STRETCH_NORMAL , Pango::STRETCH_SEMI_EXPANDED , Pango::STRETCH_EXPANDED , Pango::STRETCH_EXTRA_EXPANDED , Pango::STRETCH_ULTRA_EXPANDED }
| An enumeration specifying the width of the font relative to other designs within a family. More...
enum | Pango::Weight { Pango::WEIGHT_THIN = 100 , Pango::WEIGHT_ULTRALIGHT = 200 , Pango::WEIGHT_LIGHT = 300 , Pango::WEIGHT_SEMILIGHT = 350 , Pango::WEIGHT_BOOK = 380 , Pango::WEIGHT_NORMAL = 400 , Pango::WEIGHT_MEDIUM = 500 , Pango::WEIGHT_SEMIBOLD = 600 , Pango::WEIGHT_BOLD = 700 , Pango::WEIGHT_ULTRABOLD = 800 , Pango::WEIGHT_HEAVY = 900 , Pango::WEIGHT_ULTRAHEAVY = 1000 }
| An enumeration specifying the weight (boldness) of a font. More...
enum | Pango::FontMask { Pango::FONT_MASK_FAMILY = 1 << 0 , Pango::FONT_MASK_STYLE = 1 << 1 , Pango::FONT_MASK_VARIANT = 1 << 2 , Pango::FONT_MASK_WEIGHT = 1 << 3 , Pango::FONT_MASK_STRETCH = 1 << 4 , Pango::FONT_MASK_SIZE = 1 << 5 , Pango::FONT_MASK_GRAVITY = 1 << 6 , Pango::FONT_MASK_VARIATIONS = 1 << 7 }
| The bits in a Pango::FontMask correspond to fields in a Pango::FontDescription that have been set. More...
enum | Pango::Gravity { Pango::GRAVITY_SOUTH , Pango::GRAVITY_EAST , Pango::GRAVITY_NORTH , Pango::GRAVITY_WEST , Pango::GRAVITY_AUTO }
| The Pango::Gravity type represents the orientation of glyphs in a segment of text. More...
enum | Pango::ShapeFlags { Pango::SHAPE_NONE = 0x0 , Pango::SHAPE_ROUND_POSITIONS = 1 << 0 }
| Flags influencing the shaping process. More...
enum | Pango::Script { Pango::SCRIPT_INVALID_CODE = -1 , Pango::SCRIPT_COMMON , Pango::SCRIPT_INHERITED , Pango::SCRIPT_ARABIC , Pango::SCRIPT_ARMENIAN , Pango::SCRIPT_BENGALI , Pango::SCRIPT_BOPOMOFO , Pango::SCRIPT_CHEROKEE , Pango::SCRIPT_COPTIC , Pango::SCRIPT_CYRILLIC , Pango::SCRIPT_DESERET , Pango::SCRIPT_DEVANAGARI , Pango::SCRIPT_ETHIOPIC , Pango::SCRIPT_GEORGIAN , Pango::SCRIPT_GOTHIC , Pango::SCRIPT_GREEK , Pango::SCRIPT_GUJARATI , Pango::SCRIPT_GURMUKHI , Pango::SCRIPT_HAN , Pango::SCRIPT_HANGUL , Pango::SCRIPT_HEBREW , Pango::SCRIPT_HIRAGANA , Pango::SCRIPT_KANNADA , Pango::SCRIPT_KATAKANA , Pango::SCRIPT_KHMER , Pango::SCRIPT_LAO , Pango::SCRIPT_LATIN , Pango::SCRIPT_MALAYALAM , Pango::SCRIPT_MONGOLIAN , Pango::SCRIPT_MYANMAR , Pango::SCRIPT_OGHAM , Pango::SCRIPT_OLD_ITALIC , Pango::SCRIPT_ORIYA , Pango::SCRIPT_RUNIC , Pango::SCRIPT_SINHALA , Pango::SCRIPT_SYRIAC , Pango::SCRIPT_TAMIL , Pango::SCRIPT_TELUGU , Pango::SCRIPT_THAANA , Pango::SCRIPT_THAI , Pango::SCRIPT_TIBETAN , Pango::SCRIPT_CANADIAN_ABORIGINAL , Pango::SCRIPT_YI , Pango::SCRIPT_TAGALOG , Pango::SCRIPT_HANUNOO , Pango::SCRIPT_BUHID , Pango::SCRIPT_TAGBANWA , Pango::SCRIPT_BRAILLE , Pango::SCRIPT_CYPRIOT , Pango::SCRIPT_LIMBU , Pango::SCRIPT_OSMANYA , Pango::SCRIPT_SHAVIAN , Pango::SCRIPT_LINEAR_B , Pango::SCRIPT_TAI_LE , Pango::SCRIPT_UGARITIC , Pango::SCRIPT_NEW_TAI_LUE , Pango::SCRIPT_BUGINESE , Pango::SCRIPT_GLAGOLITIC , Pango::SCRIPT_TIFINAGH , Pango::SCRIPT_SYLOTI_NAGRI , Pango::SCRIPT_OLD_PERSIAN , Pango::SCRIPT_KHAROSHTHI , Pango::SCRIPT_UNKNOWN , Pango::SCRIPT_BALINESE , Pango::SCRIPT_CUNEIFORM , Pango::SCRIPT_PHOENICIAN , Pango::SCRIPT_PHAGS_PA , Pango::SCRIPT_NKO , Pango::SCRIPT_KAYAH_LI , Pango::SCRIPT_LEPCHA , Pango::SCRIPT_REJANG , Pango::SCRIPT_SUNDANESE , Pango::SCRIPT_SAURASHTRA , Pango::SCRIPT_CHAM , Pango::SCRIPT_OL_CHIKI , Pango::SCRIPT_VAI , Pango::SCRIPT_CARIAN , Pango::SCRIPT_LYCIAN , Pango::SCRIPT_LYDIAN , Pango::SCRIPT_BATAK , Pango::SCRIPT_BRAHMI , Pango::SCRIPT_MANDAIC , Pango::SCRIPT_CHAKMA , Pango::SCRIPT_MEROITIC_CURSIVE , Pango::SCRIPT_MEROITIC_HIEROGLYPHS , Pango::SCRIPT_MIAO , Pango::SCRIPT_SHARADA , Pango::SCRIPT_SORA_SOMPENG , Pango::SCRIPT_TAKRI , Pango::SCRIPT_BASSA_VAH , Pango::SCRIPT_CAUCASIAN_ALBANIAN , Pango::SCRIPT_DUPLOYAN , Pango::SCRIPT_ELBASAN , Pango::SCRIPT_GRANTHA , Pango::SCRIPT_KHOJKI , Pango::SCRIPT_KHUDAWADI , Pango::SCRIPT_LINEAR_A , Pango::SCRIPT_MAHAJANI , Pango::SCRIPT_MANICHAEAN , Pango::SCRIPT_MENDE_KIKAKUI , Pango::SCRIPT_MODI , Pango::SCRIPT_MRO , Pango::SCRIPT_NABATAEAN , Pango::SCRIPT_OLD_NORTH_ARABIAN , Pango::SCRIPT_OLD_PERMIC , Pango::SCRIPT_PAHAWH_HMONG , Pango::SCRIPT_PALMYRENE , Pango::SCRIPT_PAU_CIN_HAU , Pango::SCRIPT_PSALTER_PAHLAVI , Pango::SCRIPT_SIDDHAM , Pango::SCRIPT_TIRHUTA , Pango::SCRIPT_WARANG_CITI , Pango::SCRIPT_AHOM , Pango::SCRIPT_ANATOLIAN_HIEROGLYPHS , Pango::SCRIPT_HATRAN , Pango::SCRIPT_MULTANI , Pango::SCRIPT_OLD_HUNGARIAN , Pango::SCRIPT_SIGNWRITING }
| The Pango::Script enumeration identifies different writing systems. More...
enum | Pango::Alignment { Pango::ALIGN_LEFT , Pango::ALIGN_CENTER , Pango::ALIGN_RIGHT }
| A Pango::Alignment describes how to align the lines of a Pango::Layout within the available space. More...
enum | Pango::WrapMode { Pango::WRAP_WORD , Pango::WRAP_CHAR , Pango::WRAP_WORD_CHAR }
| A Pango::WrapMode describes how to wrap the lines of a Pango::Layout to the desired width. More...
enum | Pango::EllipsizeMode { Pango::ELLIPSIZE_NONE , Pango::ELLIPSIZE_START , Pango::ELLIPSIZE_MIDDLE , Pango::ELLIPSIZE_END }
| The Pango::EllipsizeMode type describes what sort of (if any) ellipsization should be applied to a line of text. More...
enum | Pango::RenderPart { Pango::RENDER_PART_FOREGROUND , Pango::RENDER_PART_BACKGROUND , Pango::RENDER_PART_UNDERLINE , Pango::RENDER_PART_STRIKETHROUGH , Pango::RENDER_PART_OVERLINE }
| Pango::RenderPart defines different items to render for such purposes as setting colors. More...
enum | Pango::TabAlign { Pango::TAB_LEFT }
| A Pango::TabAlign specifies where a tab stop appears relative to the text. More...

## Functions
ShowFlags | Pango::operator| (ShowFlags lhs, ShowFlags rhs)
ShowFlags | Pango::operator& (ShowFlags lhs, ShowFlags rhs)
ShowFlags | Pango::operator^ (ShowFlags lhs, ShowFlags rhs)
ShowFlags | Pango::operator~ (ShowFlags flags)
ShowFlags & | Pango::operator|= (ShowFlags & lhs, ShowFlags rhs)
ShowFlags & | Pango::operator&= (ShowFlags & lhs, ShowFlags rhs)
ShowFlags & | Pango::operator^= (ShowFlags & lhs, ShowFlags rhs)
FontMask | Pango::operator| (FontMask lhs, FontMask rhs)
FontMask | Pango::operator& (FontMask lhs, FontMask rhs)
FontMask | Pango::operator^ (FontMask lhs, FontMask rhs)
FontMask | Pango::operator~ (FontMask flags)
FontMask & | Pango::operator|= (FontMask & lhs, FontMask rhs)
FontMask & | Pango::operator&= (FontMask & lhs, FontMask rhs)
FontMask & | Pango::operator^= (FontMask & lhs, FontMask rhs)
ShapeFlags | Pango::operator| (ShapeFlags lhs, ShapeFlags rhs)
ShapeFlags | Pango::operator& (ShapeFlags lhs, ShapeFlags rhs)
ShapeFlags | Pango::operator^ (ShapeFlags lhs, ShapeFlags rhs)
ShapeFlags | Pango::operator~ (ShapeFlags flags)
ShapeFlags & | Pango::operator|= (ShapeFlags & lhs, ShapeFlags rhs)
ShapeFlags & | Pango::operator&= (ShapeFlags & lhs, ShapeFlags rhs)
ShapeFlags & | Pango::operator^= (ShapeFlags & lhs, ShapeFlags rhs)

## Detailed Description

## Enumeration Type Documentation

## ◆ Alignment

enum Pango::Alignment

A Pango::Alignment describes how to align the lines of a Pango::Layout within the available space.

If the Pango::Layout is set to justify using Pango::Layout::set_justify(), this only has effect for partial lines.

Enumerator
ALIGN_LEFT | Put all available space on the right.
ALIGN_CENTER | Center the line within the available space.
ALIGN_RIGHT | Put all available space on the left.

## ◆ AttrType

enum Pango::AttrType

The Pango::AttrType 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.

Enumerator
ATTR_INVALID | Pango::AttrType distinguishes between different types of attributes. Along with the predefined values, it is possible to allocate additional values for custom attributes using Pango::Attribute::register_type(). The predefined values are given below. The type of structure used to store the attribute is listed in parentheses after the description. Does not happen.
ATTR_LANGUAGE | Language (Pango::AttrLanguage).
ATTR_FAMILY | Font family name list (Pango::AttrString).
ATTR_STYLE | Font slant style (Pango::AttrInt).
ATTR_WEIGHT | Font weight (Pango::AttrInt).
ATTR_VARIANT | Font variant (normal or small caps) (Pango::AttrInt).
ATTR_STRETCH | Font stretch (Pango::AttrInt).
ATTR_SIZE | Font size in points scaled by Pango::SCALE (Pango::AttrInt).
ATTR_FONT_DESC | Font description (Pango::AttrFontDesc).
ATTR_FOREGROUND | Foreground color (Pango::AttrColor).
ATTR_BACKGROUND | Background color (Pango::AttrColor).
ATTR_UNDERLINE | Whether the text has an underline (Pango::AttrInt).
ATTR_STRIKETHROUGH | Whether the text is struck-through (Pango::AttrInt).
ATTR_RISE | Baseline displacement (Pango::AttrInt).
ATTR_SHAPE | Shape (Pango::AttrShape).
ATTR_SCALE | Font size scale factor (Pango::AttrFloat).
ATTR_FALLBACK | Whether fallback is enabled (Pango::AttrInt).
ATTR_LETTER_SPACING | Letter spacing (Pango::AttrInt).
ATTR_UNDERLINE_COLOR | Underline color (Pango::AttrColor).
ATTR_STRIKETHROUGH_COLOR | Strikethrough color (Pango::AttrColor).
ATTR_ABSOLUTE_SIZE | Font size in pixels scaled by Pango::SCALE (Pango::AttrInt).
ATTR_GRAVITY | Base text gravity (Pango::AttrInt).
ATTR_GRAVITY_HINT | Gravity hint (Pango::AttrInt).
ATTR_FONT_FEATURES | OpenType font features (Pango::AttrString). Since pangomm 1.38
ATTR_FOREGROUND_ALPHA | Foreground alpha (Pango::AttrInt). Since pangomm 1.38
ATTR_BACKGROUND_ALPHA | Background alpha (Pango::AttrInt). Since pangomm 1.38
ATTR_ALLOW_BREAKS | Whether breaks are allowed (Pango::AttrInt). Since pangomm 1.44
ATTR_SHOW | How to render invisible characters (Pango::AttrInt). Since pangomm 1.44
ATTR_INSERT_HYPHENS | Whether to insert hyphens at intra-word line breaks (Pango::AttrInt). Since pangomm 1.44
ATTR_OVERLINE | Whether the text has an overline (Pango::AttrInt). Since pangomm 1.46
ATTR_OVERLINE_COLOR | Overline color (Pango::AttrColor). Since pangomm 1.46

## ◆ CoverageLevel

enum Pango::CoverageLevel

Used to indicate how well a font can represent a particular Unicode character point for a particular script.

Since 1.44, only Pango::COVERAGE_NONE and Pango::COVERAGE_EXACT will be returned.

Enumerator
COVERAGE_NONE | The character is not representable with the font.
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.
COVERAGE_APPROXIMATE | The character is represented as basically the correct graphical form, but with a stylistic variant inappropriate for the current script.
COVERAGE_EXACT | The character is represented as the correct graphical form.

## ◆ Direction

enum Pango::Direction

The Pango::Direction type represents a direction in the Unicode bidirectional algorithm; not every value in this enumeration makes sense for every usage of Pango::Direction; 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 Pango::Gravity for how vertical text is handled in Pango.

If you are interested in text direction, you should really use fribidi directly. PangoDirection is only retained because it is used in some public apis.

Enumerator
DIRECTION_LTR | A strong left-to-right direction.
DIRECTION_RTL | A strong right-to-left direction.
DIRECTION_TTB_LTR | Deprecated value; treated the same as Pango::DIRECTION_RTL.
DIRECTION_TTB_RTL | Deprecated value; treated the same as Pango::DIRECTION_LTR.
DIRECTION_WEAK_LTR | A weak left-to-right direction.
DIRECTION_WEAK_RTL | A weak right-to-left direction.
DIRECTION_NEUTRAL | No direction specified.

## ◆ EllipsizeMode

enum Pango::EllipsizeMode

The Pango::EllipsizeMode 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.

Enumerator
ELLIPSIZE_NONE | No ellipsization.
ELLIPSIZE_START | Omit characters at the start of the text.
ELLIPSIZE_MIDDLE | Omit characters in the middle of the text.
ELLIPSIZE_END | Omit characters at the end of the text.

## ◆ FontMask

enum Pango::FontMask

The bits in a Pango::FontMask correspond to fields in a Pango::FontDescription that have been set.

Bitwise operators:
  FontMask operator|(FontMask, FontMask)
  FontMask operator&(FontMask, FontMask)
  FontMask operator^(FontMask, FontMask)
  FontMask operator~(FontMask)
  FontMask& operator|=(FontMask&, FontMask)
  FontMask& operator&=(FontMask&, FontMask)
  FontMask& operator^=(FontMask&, FontMask)

Enumerator
FONT_MASK_FAMILY | The font family is specified.
FONT_MASK_STYLE | The font style is specified.
FONT_MASK_VARIANT | The font variant is specified.
FONT_MASK_WEIGHT | The font weight is specified.
FONT_MASK_STRETCH | The font stretch is specified.
FONT_MASK_SIZE | The font size is specified.
FONT_MASK_GRAVITY | The font gravity is specified (Since: 1.16.).
FONT_MASK_VARIATIONS | OpenType font variations are specified (Since: 1.42).

## ◆ Gravity

enum Pango::Gravity

The Pango::Gravity 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 Pango::Gravity. Not every value in this enumeration makes sense for every usage of Pango::Gravity; 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: Pango::GravityHint

Since pangomm 1.16

Enumerator
GRAVITY_SOUTH | Glyphs stand upright (default).
GRAVITY_EAST | Glyphs are rotated 90 degrees clockwise.
GRAVITY_NORTH | Glyphs are upside-down.
GRAVITY_WEST | Glyphs are rotated 90 degrees counter-clockwise.
GRAVITY_AUTO | Gravity is resolved from the context matrix.

## ◆ GravityHint

enum Pango::GravityHint

The Pango::GravityHint defines how horizontal scripts should behave in a vertical context.

That is, English excerpt in a vertical paragraph for example.

See Pango::Gravity.

Since pangomm 1.16

Enumerator
GRAVITY_HINT_NATURAL | Scripts will take their natural gravity based on the base gravity and the script. This is the default.
GRAVITY_HINT_STRONG | Always use the base gravity set, regardless of the script.
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.

## ◆ Overline

enum Pango::Overline

The Pango::Overline enumeration is used to specify whether text should be overlined, and if so, the type of line.

Since pangomm 1.46

Enumerator
OVERLINE_NONE | No overline should be drawn.
OVERLINE_SINGLE | Draw a single line above the ink extents of the text being underlined.

## ◆ RenderPart

enum Pango::RenderPart

Pango::RenderPart defines different items to render for such purposes as setting colors.

Since pangomm 1.8

Enumerator
RENDER_PART_FOREGROUND | The text itself.
RENDER_PART_BACKGROUND | The area behind the text.
RENDER_PART_UNDERLINE | Underlines.
RENDER_PART_STRIKETHROUGH | Strikethrough lines.
RENDER_PART_OVERLINE | Overlines.

## ◆ Script

enum Pango::Script

The Pango::Script enumeration identifies different writing systems.

The values correspond to the names as defined in the Unicode standard. See Unicode Standard Annex #24: Script names.

Note that this enumeration is deprecated and will not be updated to include values in newer versions of the Unicode standard. Applications should use the GUnicodeScript enumeration instead, whose values are interchangeable with PangoScript.

Enumerator
SCRIPT_INVALID_CODE | A value never returned from pango_script_for_unichar().
SCRIPT_COMMON | A character used by multiple different scripts.
SCRIPT_INHERITED | A mark glyph that takes its script from the base glyph to which it is attached.
SCRIPT_ARABIC | Arabic.
SCRIPT_ARMENIAN | Armenian.
SCRIPT_BENGALI | Bengali.
SCRIPT_BOPOMOFO | Bopomofo.
SCRIPT_CHEROKEE | Cherokee.
SCRIPT_COPTIC | Coptic.
SCRIPT_CYRILLIC | Cyrillic.
SCRIPT_DESERET | Deseret.
SCRIPT_DEVANAGARI | Devanagari.
SCRIPT_ETHIOPIC | Ethiopic.
SCRIPT_GEORGIAN | Georgian.
SCRIPT_GOTHIC | Gothic.
SCRIPT_GREEK | Greek.
SCRIPT_GUJARATI | Gujarati.
SCRIPT_GURMUKHI | Gurmukhi.
SCRIPT_HAN | Han.
SCRIPT_HANGUL | Hangul.
SCRIPT_HEBREW | Hebrew.
SCRIPT_HIRAGANA | Hiragana.
SCRIPT_KANNADA | Kannada.
SCRIPT_KATAKANA | Katakana.
SCRIPT_KHMER | Khmer.
SCRIPT_LAO | Lao.
SCRIPT_LATIN | Latin.
SCRIPT_MALAYALAM | Malayalam.
SCRIPT_MONGOLIAN | Mongolian.
SCRIPT_MYANMAR | Myanmar.
SCRIPT_OGHAM | Ogham.
SCRIPT_OLD_ITALIC | Old Italic.
SCRIPT_ORIYA | Oriya.
SCRIPT_RUNIC | Runic.
SCRIPT_SINHALA | Sinhala.
SCRIPT_SYRIAC | Syriac.
SCRIPT_TAMIL | Tamil.
SCRIPT_TELUGU | Telugu.
SCRIPT_THAANA | Thaana.
SCRIPT_THAI | Thai.
SCRIPT_TIBETAN | Tibetan.
SCRIPT_CANADIAN_ABORIGINAL | Canadian Aboriginal.
SCRIPT_YI | Yi.
SCRIPT_TAGALOG | Tagalog.
SCRIPT_HANUNOO | Hanunoo.
SCRIPT_BUHID | Buhid.
SCRIPT_TAGBANWA | Tagbanwa.
SCRIPT_BRAILLE | Braille.
SCRIPT_CYPRIOT | Cypriot.
SCRIPT_LIMBU | Limbu.
SCRIPT_OSMANYA | Osmanya.
SCRIPT_SHAVIAN | Shavian.
SCRIPT_LINEAR_B | Linear B.
SCRIPT_TAI_LE | Tai Le.
SCRIPT_UGARITIC | Ugaritic.
SCRIPT_NEW_TAI_LUE | New Tai Lue. Since pangomm 1.10
SCRIPT_BUGINESE | Buginese. Since pangomm 1.10
SCRIPT_GLAGOLITIC | Glagolitic. Since pangomm 1.10
SCRIPT_TIFINAGH | Tifinagh. Since pangomm 1.10
SCRIPT_SYLOTI_NAGRI | Syloti Nagri. Since pangomm 1.10
SCRIPT_OLD_PERSIAN | Old Persian. Since pangomm 1.10
SCRIPT_KHAROSHTHI | Kharoshthi. Since pangomm 1.10
SCRIPT_UNKNOWN | An unassigned code point. Since pangomm 1.14
SCRIPT_BALINESE | Balinese. Since pangomm 1.14
SCRIPT_CUNEIFORM | Cuneiform. Since pangomm 1.14
SCRIPT_PHOENICIAN | Phoenician. Since pangomm 1.14
SCRIPT_PHAGS_PA | Phags-pa. Since pangomm 1.14
SCRIPT_NKO | N'Ko. Since pangomm 1.14
SCRIPT_KAYAH_LI | Kayah Li. Since pangomm 1.20.1
SCRIPT_LEPCHA | Lepcha. Since pangomm 1.20.1
SCRIPT_REJANG | Rejang. Since pangomm 1.20.1
SCRIPT_SUNDANESE | Sundanese. Since pangomm 1.20.1
SCRIPT_SAURASHTRA | Saurashtra. Since pangomm 1.20.1
SCRIPT_CHAM | Cham. Since pangomm 1.20.1
SCRIPT_OL_CHIKI | Ol Chiki. Since pangomm 1.20.1
SCRIPT_VAI | Vai. Since pangomm 1.20.1
SCRIPT_CARIAN | Carian. Since pangomm 1.20.1
SCRIPT_LYCIAN | Lycian. Since pangomm 1.20.1
SCRIPT_LYDIAN | Lydian. Since pangomm 1.20.1
SCRIPT_BATAK | Batak. Since pangomm 1.32
SCRIPT_BRAHMI | Brahmi. Since pangomm 1.32
SCRIPT_MANDAIC | Mandaic. Since pangomm 1.32
SCRIPT_CHAKMA | Chakma. Since pangomm 1.32
SCRIPT_MEROITIC_CURSIVE | Meroitic Cursive. Since pangomm 1.32
SCRIPT_MEROITIC_HIEROGLYPHS | Meroitic Hieroglyphs. Since pangomm 1.32
SCRIPT_MIAO | Miao. Since pangomm 1.32
SCRIPT_SHARADA | Sharada. Since pangomm 1.32
SCRIPT_SORA_SOMPENG | Sora Sompeng. Since pangomm 1.32
SCRIPT_TAKRI | Takri. Since pangomm 1.32
SCRIPT_BASSA_VAH | Bassa. Since pangomm 1.40
SCRIPT_CAUCASIAN_ALBANIAN | Caucasian Albanian. Since pangomm 1.40
SCRIPT_DUPLOYAN | Duployan. Since pangomm 1.40
SCRIPT_ELBASAN | Elbasan. Since pangomm 1.40
SCRIPT_GRANTHA | Grantha. Since pangomm 1.40
SCRIPT_KHOJKI | Kjohki. Since pangomm 1.40
SCRIPT_KHUDAWADI | Khudawadi, Sindhi. Since pangomm 1.40
SCRIPT_LINEAR_A | Linear A. Since pangomm 1.40
SCRIPT_MAHAJANI | Mahajani. Since pangomm 1.40
SCRIPT_MANICHAEAN | Manichaean. Since pangomm 1.40
SCRIPT_MENDE_KIKAKUI | Mende Kikakui. Since pangomm 1.40
SCRIPT_MODI | Modi. Since pangomm 1.40
SCRIPT_MRO | Mro. Since pangomm 1.40
SCRIPT_NABATAEAN | Nabataean. Since pangomm 1.40
SCRIPT_OLD_NORTH_ARABIAN | Old North Arabian. Since pangomm 1.40
SCRIPT_OLD_PERMIC | Old Permic. Since pangomm 1.40
SCRIPT_PAHAWH_HMONG | Pahawh Hmong. Since pangomm 1.40
SCRIPT_PALMYRENE | Palmyrene. Since pangomm 1.40
SCRIPT_PAU_CIN_HAU | Pau Cin Hau. Since pangomm 1.40
SCRIPT_PSALTER_PAHLAVI | Psalter Pahlavi. Since pangomm 1.40
SCRIPT_SIDDHAM | Siddham. Since pangomm 1.40
SCRIPT_TIRHUTA | Tirhuta. Since pangomm 1.40
SCRIPT_WARANG_CITI | Warang Citi. Since pangomm 1.40
SCRIPT_AHOM | Ahom. Since pangomm 1.40
SCRIPT_ANATOLIAN_HIEROGLYPHS | Anatolian Hieroglyphs. Since pangomm 1.40
SCRIPT_HATRAN | Hatran. Since pangomm 1.40
SCRIPT_MULTANI | Multani. Since pangomm 1.40
SCRIPT_OLD_HUNGARIAN | Old Hungarian. Since pangomm 1.40
SCRIPT_SIGNWRITING | Signwriting. Since pangomm 1.40

## ◆ ShapeFlags

enum Pango::ShapeFlags

Flags influencing the shaping process.

These can be passed to pango_shape_with_flags().

Since pangomm 2.46

Bitwise operators:
  ShapeFlags operator|(ShapeFlags, ShapeFlags)
  ShapeFlags operator&(ShapeFlags, ShapeFlags)
  ShapeFlags operator^(ShapeFlags, ShapeFlags)
  ShapeFlags operator~(ShapeFlags)
  ShapeFlags& operator|=(ShapeFlags&, ShapeFlags)
  ShapeFlags& operator&=(ShapeFlags&, ShapeFlags)
  ShapeFlags& operator^=(ShapeFlags&, ShapeFlags)

Enumerator
SHAPE_NONE | Default value.
SHAPE_ROUND_POSITIONS | Round glyph positions and widths to whole device units. This option should be set if the target renderer can't do subpixel positioning of glyphs.

## ◆ ShowFlags

enum Pango::ShowFlags

These flags affect how Pango treats characters that are normally not visible in the output.

Bitwise operators:
  ShowFlags operator|(ShowFlags, ShowFlags)
  ShowFlags operator&(ShowFlags, ShowFlags)
  ShowFlags operator^(ShowFlags, ShowFlags)
  ShowFlags operator~(ShowFlags)
  ShowFlags& operator|=(ShowFlags&, ShowFlags)
  ShowFlags& operator&=(ShowFlags&, ShowFlags)
  ShowFlags& operator^=(ShowFlags&, ShowFlags)

Enumerator
SHOW_NONE | No special treatment for invisible characters.
SHOW_SPACES | Render spaces, tabs and newlines visibly.
SHOW_LINE_BREAKS | Render line breaks visibly.
SHOW_IGNORABLES | Render default-ignorable Unicode characters visibly.

## ◆ Stretch

enum Pango::Stretch

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

Enumerator
STRETCH_ULTRA_CONDENSED | Ultra condensed width.
STRETCH_EXTRA_CONDENSED | Extra condensed width.
STRETCH_CONDENSED | Condensed width.
STRETCH_SEMI_CONDENSED | Semi condensed width.
STRETCH_NORMAL | The normal width.
STRETCH_SEMI_EXPANDED | Semi expanded width.
STRETCH_EXPANDED | Expanded width.
STRETCH_EXTRA_EXPANDED | Extra expanded width.
STRETCH_ULTRA_EXPANDED | Ultra expanded width.

## ◆ Style

enum Pango::Style

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

Enumerator
STYLE_NORMAL | The font is upright.
STYLE_OBLIQUE | The font is slanted, but in a roman style.
STYLE_ITALIC | The font is slanted in an italic style.

## ◆ TabAlign

enum Pango::TabAlign

A Pango::TabAlign specifies where a tab stop appears relative to the text.

Enumerator
TAB_LEFT | The tab stop appears to the left of the text.

## ◆ Underline

enum Pango::Underline

The Pango::Underline enumeration is used to specify whether text should be underlined, and if so, the type of underlining.

Enumerator
UNDERLINE_NONE | No underline should be drawn.
UNDERLINE_SINGLE | A single underline should be drawn.
UNDERLINE_DOUBLE | A double underline should be drawn.
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.
UNDERLINE_ERROR | A wavy underline should be drawn below. This underline is typically used to indicate an error such as a possible mispelling; in some cases a contrasting color may automatically be used. This type of underlining is available since Pango 1.4.
UNDERLINE_SINGLE_LINE | Like PANGO_UNDERLINE_SINGLE, but drawn continuously across multiple runs. This type of underlining is available since Pango 1.46.
UNDERLINE_DOUBLE_LINE | Like PANGO_UNDERLINE_DOUBLE, but drawn continuously across multiple runs. This type of underlining is available since Pango 1.46.
UNDERLINE_ERROR_LINE | Like PANGO_UNDERLINE_ERROR, but drawn continuously across multiple runs. This type of underlining is available since Pango 1.46.

## ◆ Variant

enum Pango::Variant

An enumeration specifying capitalization variant of the font.

Enumerator
VARIANT_NORMAL | A normal font.
VARIANT_SMALL_CAPS | A font with the lower case characters replaced by smaller variants of the capital characters.

## ◆ Weight

enum Pango::Weight

An enumeration specifying the weight (boldness) of a font.

This is a numerical value ranging from 100 to 1000, but there are some predefined values:

Enumerator
WEIGHT_THIN | The thin weight (= 100; Since: 1.24).
WEIGHT_ULTRALIGHT | The ultralight weight (= 200).
WEIGHT_LIGHT | The light weight (= 300).
WEIGHT_SEMILIGHT | The semilight weight (= 350; Since: 1.36.7).
WEIGHT_BOOK | The book weight (= 380; Since: 1.24).
WEIGHT_NORMAL | The default weight (= 400).
WEIGHT_MEDIUM | The normal weight (= 500; Since: 1.24).
WEIGHT_SEMIBOLD | The semibold weight (= 600).
WEIGHT_BOLD | The bold weight (= 700).
WEIGHT_ULTRABOLD | The ultrabold weight (= 800).
WEIGHT_HEAVY | The heavy weight (= 900).
WEIGHT_ULTRAHEAVY | The ultraheavy weight (= 1000; Since: 1.24).

## ◆ WrapMode

enum Pango::WrapMode

A Pango::WrapMode describes how to wrap the lines of a Pango::Layout to the desired width.

Enumerator
WRAP_WORD | Wrap lines at word boundaries.
WRAP_CHAR | Wrap lines at character boundaries.
WRAP_WORD_CHAR | Wrap lines at word boundaries, but fall back to character boundaries if there is not enough space for a full word.

## Function Documentation

## ◆ operator&() [1/3]

FontMask Pango::operator& | ( | FontMask | lhs,
|  | FontMask | rhs )
| inline

## ◆ operator&() [2/3]

ShapeFlags Pango::operator& | ( | ShapeFlags | lhs,
|  | ShapeFlags | rhs )
| inline

## ◆ operator&() [3/3]

ShowFlags Pango::operator& | ( | ShowFlags | lhs,
|  | ShowFlags | rhs )
| inline

## ◆ operator&=() [1/3]

FontMask & Pango::operator&= | ( | FontMask & | lhs,
|  | FontMask | rhs )
| inline

## ◆ operator&=() [2/3]

ShapeFlags & Pango::operator&= | ( | ShapeFlags & | lhs,
|  | ShapeFlags | rhs )
| inline

## ◆ operator&=() [3/3]

ShowFlags & Pango::operator&= | ( | ShowFlags & | lhs,
|  | ShowFlags | rhs )
| inline

## ◆ operator^() [1/3]

FontMask Pango::operator^ | ( | FontMask | lhs,
|  | FontMask | rhs )
| inline

## ◆ operator^() [2/3]

ShapeFlags Pango::operator^ | ( | ShapeFlags | lhs,
|  | ShapeFlags | rhs )
| inline

## ◆ operator^() [3/3]

ShowFlags Pango::operator^ | ( | ShowFlags | lhs,
|  | ShowFlags | rhs )
| inline

## ◆ operator^=() [1/3]

FontMask & Pango::operator^= | ( | FontMask & | lhs,
|  | FontMask | rhs )
| inline

## ◆ operator^=() [2/3]

ShapeFlags & Pango::operator^= | ( | ShapeFlags & | lhs,
|  | ShapeFlags | rhs )
| inline

## ◆ operator^=() [3/3]

ShowFlags & Pango::operator^= | ( | ShowFlags & | lhs,
|  | ShowFlags | rhs )
| inline

## ◆ operator|() [1/3]

FontMask Pango::operator| | ( | FontMask | lhs,
|  | FontMask | rhs )
| inline

## ◆ operator|() [2/3]

ShapeFlags Pango::operator| | ( | ShapeFlags | lhs,
|  | ShapeFlags | rhs )
| inline

## ◆ operator|() [3/3]

ShowFlags Pango::operator| | ( | ShowFlags | lhs,
|  | ShowFlags | rhs )
| inline

## ◆ operator|=() [1/3]

FontMask & Pango::operator|= | ( | FontMask & | lhs,
|  | FontMask | rhs )
| inline

## ◆ operator|=() [2/3]

ShapeFlags & Pango::operator|= | ( | ShapeFlags & | lhs,
|  | ShapeFlags | rhs )
| inline

## ◆ operator|=() [3/3]

ShowFlags & Pango::operator|= | ( | ShowFlags & | lhs,
|  | ShowFlags | rhs )
| inline

## ◆ operator~() [1/3]

FontMask Pango::operator~ | ( | FontMask | flags | ) |
| inline

## ◆ operator~() [2/3]

ShapeFlags Pango::operator~ | ( | ShapeFlags | flags | ) |
| inline

## ◆ operator~() [3/3]

ShowFlags Pango::operator~ | ( | ShowFlags | flags | ) |
| inline