Pango Namespace Reference

## Classes

class | Analysis
| A Pango::Analysis stores information about the properties of a segment of text. More...
class | AttrColor
| A Pango::AttrColor is used to represent an attribute which is a color. More...
class | AttrFloat
| A Pango::AttrFloat is used to represent an attribute with a float or double value. More...
class | AttrFontDesc
| A Pango::AttrFontDesc is used to represent an attribute that sets all aspects of the font description at once. More...
class | Attribute
| The Pango::Attribute structure represents the common portions of all attributes. More...
struct | AttributeTraits
class | AttrInt
| A Pango::AttrInt is used to represent an attribute with an integer or enumeration value. More...
class | AttrIter
| A Pango::AttrIter is used to represent an iterator through a Pango::AttrList. More...
class | AttrLanguage
| A Pango::AttrLanguage is used to represent an attribute that is a language. More...
class | AttrList
| A Pango::AttrList represents a list of attributes that apply to a section of text. More...
class | AttrShape
| A Pango::AttrShape structure is used to represent an attribute which imposes shape restrictions. More...
class | AttrString
| A Pango::AttrString is used to represent an attribute with a string value. More...
class | CairoFontMap
| A Pango::CairoFontMap represents the set of fonts available for a particular rendering system. More...
class | Color
| A Pango::Color is used to represent a color in an uncalibrated RGB colorspace. More...
class | Context
| A Pango::Context stores global information used to control the itemization process. More...
class | Coverage
| A Pango::Coverage represents a map from ISO-10646 character point to Pango::CoverageLevel. More...
class | Font
| A Pango::Font is used to represent a font in a rendering-system-independent matter. More...
class | FontDescription
| A Pango::FontDescription represents the description of an ideal font. More...
class | FontFace
| A Pango::FontFace is used to represent a group of fonts with the same family, slant, weight, width, but varying sizes. More...
class | FontFamily
| A Pango::FontFamily is used to represent a family of related font faces. More...
class | FontMap
| A Pango::FontMap represents the set of fonts available for a particular rendering system. More...
class | FontMetrics
| A Pango::FontMetrics holds the overall metric information for a font (possibly restricted to a script). More...
class | Fontset
| A Pango::Fontset is used to represent a set of fonts. More...
class | GlyphGeometry
| A Pango::GlyphGeometry contains width and positioning information for a single glyph. More...
class | GlyphInfo
| A Pango::GlyphInfo represents a single glyph together with positioning information and visual attributes. More...
class | GlyphString
| A Pango::GlyphString is used to store strings of glyphs with geometry and visual attribute information. More...
class | Item
| A Pango::Item stores information about a segment of text. More...
struct | ItemTraits
class | Language
| A Pango::Language is used to represent a language. More...
class | Layout
| A Pango::Layout represents an entire paragraph of text. More...
class | LayoutIter
| A Pango::LayoutIter can be used to iterate over the visual extents of a Pango::Layout. More...
class | LayoutLine
| A Pango::LayoutLine represents one of the lines resulting from laying out a paragraph via Pango::Layout. More...
struct | LayoutLineTraits
class | LayoutRun
| A Pango::LayoutRun represents a single run within a LayoutLine. More...
class | Rectangle
| A Pango::Rectangle represents a rectangle. More...
class | Renderer
| Pango::Renderer is a base class that contains the necessary logic for rendering a Pango::Layout or Pango::LayoutLine. More...
class | TabArray
| A Pango::TabArray contains an array of tab stops. More...

## Typedefs

typedef PangoLogAttr | LogAttr
| A Pango::LogAttr stores information about the attributes of a single character. More...
typedef Glib::SListHandle< Attribute, AttributeTraits > | SListHandle_Attribute
typedef PangoGlyph | Glyph
| A Pango::Glyph represents a single glyph in the output form of a string. More...
typedef PangoGlyphUnit | GlyphUnit
| A Pango::GlyphUnit is used to store dimensions within Pango. More...
typedef PangoGlyphVisAttr | GlyphVisAttr
| A Pango::GlyphVisAttr is used to communicate information between the shaping phase and the rendering phase. More...
typedef Glib::ListHandle< Item, ItemTraits > | ListHandle_Item
typedef Glib::SListHandle< Glib::RefPtr< LayoutLine >, LayoutLineTraits > | SListHandle_LayoutLine
typedef Glib::SListHandle< Glib::RefPtr< const LayoutLine >, LayoutLineTraits > | SListHandle_ConstLayoutLine
typedef LayoutRun | GlyphItem
| A Pango::GlyphItem is a pair of a Pango::Items and the glyphs resulting from shaping the text corresponding to an item. More...
typedef PangoMatrix | Matrix

## Enumerations

enum

AttrType {
ATTR_INVALID,
ATTR_LANGUAGE,
ATTR_FAMILY,
ATTR_STYLE,
ATTR_WEIGHT,
ATTR_VARIANT,
ATTR_STRETCH,
ATTR_SIZE,
ATTR_FONT_DESC,
ATTR_FOREGROUND,
ATTR_BACKGROUND,
ATTR_UNDERLINE,
ATTR_STRIKETHROUGH,
ATTR_RISE,
ATTR_SHAPE,
ATTR_SCALE,
ATTR_FALLBACK,
ATTR_LETTER_SPACING,
ATTR_UNDERLINE_COLOR,
ATTR_STRIKETHROUGH_COLOR,
ATTR_ABSOLUTE_SIZE,
ATTR_GRAVITY,
ATTR_GRAVITY_HINT,
ATTR_FONT_FEATURES,
ATTR_FOREGROUND_ALPHA,
ATTR_BACKGROUND_ALPHA
}

| The Pango::AttrType distinguishes between different types of attributes. More...
enum | Underline { UNDERLINE_NONE, UNDERLINE_SINGLE, UNDERLINE_DOUBLE, UNDERLINE_LOW, UNDERLINE_ERROR }
| The Pango::Underline enumeration is used to specify whether text should be underlined, and if so, the type of underlining. More...
enum | Direction { DIRECTION_LTR, DIRECTION_RTL, DIRECTION_TTB_LTR, DIRECTION_TTB_RTL, DIRECTION_WEAK_LTR, DIRECTION_WEAK_RTL, 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 | GravityHint { GRAVITY_HINT_NATURAL, GRAVITY_HINT_STRONG, GRAVITY_HINT_LINE }
| The Pango::GravityHint defines how horizontal scripts should behave in a vertical context. More...
enum | CoverageLevel { COVERAGE_NONE, COVERAGE_FALLBACK, COVERAGE_APPROXIMATE, COVERAGE_EXACT }
| Used to indicate how well a font can represent a particular Unicode character point for a particular script. More...
enum | Style { STYLE_NORMAL, STYLE_OBLIQUE, STYLE_ITALIC }
| An enumeration specifying the various slant styles possible for a font. More...
enum | Variant { VARIANT_NORMAL, VARIANT_SMALL_CAPS }
| An enumeration specifying capitalization variant of the font. More...
enum | Stretch { STRETCH_ULTRA_CONDENSED, STRETCH_EXTRA_CONDENSED, STRETCH_CONDENSED, STRETCH_SEMI_CONDENSED, STRETCH_NORMAL, STRETCH_SEMI_EXPANDED, STRETCH_EXPANDED, STRETCH_EXTRA_EXPANDED, STRETCH_ULTRA_EXPANDED }
| An enumeration specifying the width of the font relative to other designs within a family. More...
enum | Weight { WEIGHT_THIN = 100, WEIGHT_ULTRALIGHT = 200, WEIGHT_LIGHT = 300, WEIGHT_SEMILIGHT = 350, WEIGHT_BOOK = 380, WEIGHT_NORMAL = 400, WEIGHT_MEDIUM = 500, WEIGHT_SEMIBOLD = 600, WEIGHT_BOLD = 700, WEIGHT_ULTRABOLD = 800, WEIGHT_HEAVY = 900, WEIGHT_ULTRAHEAVY = 1000 }
| An enumeration specifying the weight (boldness) of a font. More...
enum | FontMask { FONT_MASK_FAMILY = 1 << 0, FONT_MASK_STYLE = 1 << 1, FONT_MASK_VARIANT = 1 << 2, FONT_MASK_WEIGHT = 1 << 3, FONT_MASK_STRETCH = 1 << 4, FONT_MASK_SIZE = 1 << 5, FONT_MASK_GRAVITY = 1 << 6 }
| The bits in a Pango::FontMask correspond to fields in a Pango::FontDescription that have been set. More...
enum | Gravity { GRAVITY_SOUTH, GRAVITY_EAST, GRAVITY_NORTH, GRAVITY_WEST, GRAVITY_AUTO }
| The Pango::Gravity type represents the orientation of glyphs in a segment of text. More...

enum

Script {
SCRIPT_INVALID_CODE = -1,
SCRIPT_COMMON,
SCRIPT_INHERITED,
SCRIPT_ARABIC,
SCRIPT_ARMENIAN,
SCRIPT_BENGALI,
SCRIPT_BOPOMOFO,
SCRIPT_CHEROKEE,
SCRIPT_COPTIC,
SCRIPT_CYRILLIC,
SCRIPT_DESERET,
SCRIPT_DEVANAGARI,
SCRIPT_ETHIOPIC,
SCRIPT_GEORGIAN,
SCRIPT_GOTHIC,
SCRIPT_GREEK,
SCRIPT_GUJARATI,
SCRIPT_GURMUKHI,
SCRIPT_HAN,
SCRIPT_HANGUL,
SCRIPT_HEBREW,
SCRIPT_HIRAGANA,
SCRIPT_KANNADA,
SCRIPT_KATAKANA,
SCRIPT_KHMER,
SCRIPT_LAO,
SCRIPT_LATIN,
SCRIPT_MALAYALAM,
SCRIPT_MONGOLIAN,
SCRIPT_MYANMAR,
SCRIPT_OGHAM,
SCRIPT_OLD_ITALIC,
SCRIPT_ORIYA,
SCRIPT_RUNIC,
SCRIPT_SINHALA,
SCRIPT_SYRIAC,
SCRIPT_TAMIL,
SCRIPT_TELUGU,
SCRIPT_THAANA,
SCRIPT_THAI,
SCRIPT_TIBETAN,
SCRIPT_CANADIAN_ABORIGINAL,
SCRIPT_YI,
SCRIPT_TAGALOG,
SCRIPT_HANUNOO,
SCRIPT_BUHID,
SCRIPT_TAGBANWA,
SCRIPT_BRAILLE,
SCRIPT_CYPRIOT,
SCRIPT_LIMBU,
SCRIPT_OSMANYA,
SCRIPT_SHAVIAN,
SCRIPT_LINEAR_B,
SCRIPT_TAI_LE,
SCRIPT_UGARITIC,
SCRIPT_NEW_TAI_LUE,
SCRIPT_BUGINESE,
SCRIPT_GLAGOLITIC,
SCRIPT_TIFINAGH,
SCRIPT_SYLOTI_NAGRI,
SCRIPT_OLD_PERSIAN,
SCRIPT_KHAROSHTHI,
SCRIPT_UNKNOWN,
SCRIPT_BALINESE,
SCRIPT_CUNEIFORM,
SCRIPT_PHOENICIAN,
SCRIPT_PHAGS_PA,
SCRIPT_NKO,
SCRIPT_KAYAH_LI,
SCRIPT_LEPCHA,
SCRIPT_REJANG,
SCRIPT_SUNDANESE,
SCRIPT_SAURASHTRA,
SCRIPT_CHAM,
SCRIPT_OL_CHIKI,
SCRIPT_VAI,
SCRIPT_CARIAN,
SCRIPT_LYCIAN,
SCRIPT_LYDIAN,
SCRIPT_BATAK,
SCRIPT_BRAHMI,
SCRIPT_MANDAIC,
SCRIPT_CHAKMA,
SCRIPT_MEROITIC_CURSIVE,
SCRIPT_MEROITIC_HIEROGLYPHS,
SCRIPT_MIAO,
SCRIPT_SHARADA,
SCRIPT_SORA_SOMPENG,
SCRIPT_TAKRI,
SCRIPT_BASSA_VAH,
SCRIPT_CAUCASIAN_ALBANIAN,
SCRIPT_DUPLOYAN,
SCRIPT_ELBASAN,
SCRIPT_GRANTHA,
SCRIPT_KHOJKI,
SCRIPT_KHUDAWADI,
SCRIPT_LINEAR_A,
SCRIPT_MAHAJANI,
SCRIPT_MANICHAEAN,
SCRIPT_MENDE_KIKAKUI,
SCRIPT_MODI,
SCRIPT_MRO,
SCRIPT_NABATAEAN,
SCRIPT_OLD_NORTH_ARABIAN,
SCRIPT_OLD_PERMIC,
SCRIPT_PAHAWH_HMONG,
SCRIPT_PALMYRENE,
SCRIPT_PAU_CIN_HAU,
SCRIPT_PSALTER_PAHLAVI,
SCRIPT_SIDDHAM,
SCRIPT_TIRHUTA,
SCRIPT_WARANG_CITI,
SCRIPT_AHOM,
SCRIPT_ANATOLIAN_HIEROGLYPHS,
SCRIPT_HATRAN,
SCRIPT_MULTANI,
SCRIPT_OLD_HUNGARIAN,
SCRIPT_SIGNWRITING
}

| The Pango::Script enumeration identifies different writing systems. More...
enum | Alignment { ALIGN_LEFT, ALIGN_CENTER, ALIGN_RIGHT }
| A Pango::Alignment describes how to align the lines of a Pango::Layout within the available space. More...
enum | WrapMode { WRAP_WORD, WRAP_CHAR, WRAP_WORD_CHAR }
| A Pango::WrapMode describes how to wrap the lines of a Pango::Layout to the desired width. More...
enum | EllipsizeMode { ELLIPSIZE_NONE, ELLIPSIZE_START, ELLIPSIZE_MIDDLE, ELLIPSIZE_END }
| The Pango::EllipsizeMode type describes what sort of (if any) ellipsization should be applied to a line of text. More...
enum | RenderPart { RENDER_PART_FOREGROUND, RENDER_PART_BACKGROUND, RENDER_PART_UNDERLINE, RENDER_PART_STRIKETHROUGH }
| Pango::RenderPart defines different items to render for such purposes as setting colors. More...
enum | TabAlign { TAB_LEFT }
| A Pango::TabAlign specifies where a tab stop appears relative to the text. More...

## Functions

FontMask | operator| (FontMask lhs, FontMask rhs)
FontMask | operator& (FontMask lhs, FontMask rhs)
FontMask | operator^ (FontMask lhs, FontMask rhs)
FontMask | operator~ (FontMask flags)
FontMask& | operator|= (FontMask& lhs, FontMask rhs)
FontMask& | operator&= (FontMask& lhs, FontMask rhs)
FontMask& | operator^= (FontMask& lhs, FontMask rhs)
void | init ()
| Initialize pangomm. More...

## Variables

const int | SCALE = 1024
const double | SCALE_XX_SMALL = 0.5787037037037
const double | SCALE_X_SMALL = 0.6444444444444
const double | SCALE_SMALL = 0.8333333333333
const double | SCALE_MEDIUM = 1.0
const double | SCALE_LARGE = 1.2
const double | SCALE_X_LARGE = 1.4399999999999
const double | SCALE_XX_LARGE = 1.728

## Typedef Documentation

typedef PangoGlyph Pango::Glyph

A Pango::Glyph represents a single glyph in the output form of a string.

typedef LayoutRun Pango::GlyphItem

A Pango::GlyphItem is a pair of a Pango::Items and the glyphs resulting from shaping the text corresponding to an item.

As an example of the usage of Pango::GlyphItem, the results of shaping text with Pango::Layout is a list of Pango::LayoutLine, each of which contains a list of Pango::GlyphItem.

typedef PangoGlyphUnit Pango::GlyphUnit

A Pango::GlyphUnit is used to store dimensions within Pango.

Dimensions are stored in 1/64ths of a point.

typedef PangoGlyphVisAttr Pango::GlyphVisAttr

A Pango::GlyphVisAttr is used to communicate information between the shaping phase and the rendering phase.

It's contents are still evolving.

typedef Glib::ListHandle<Item, ItemTraits> Pango::ListHandle_Item

typedef PangoLogAttr Pango::LogAttr

A Pango::LogAttr stores information about the attributes of a single character.

typedef PangoMatrix Pango::Matrix

typedef Glib::SListHandle<Attribute, AttributeTraits> Pango::SListHandle_Attribute

typedef Glib::SListHandle< Glib::RefPtr<const LayoutLine>, LayoutLineTraits > Pango::SListHandle_ConstLayoutLine

typedef Glib::SListHandle< Glib::RefPtr<LayoutLine>, LayoutLineTraits > Pango::SListHandle_LayoutLine

## Function Documentation

void Pango::init | ( |  | ) |

Initialize pangomm.

You may call this more than once. You do not need to call this if you are using Gtk::Main, because it calls it for you.

## Variable Documentation

const int Pango::SCALE = 1024

const double Pango::SCALE_LARGE = 1.2

const double Pango::SCALE_MEDIUM = 1.0

const double Pango::SCALE_SMALL = 0.8333333333333

const double Pango::SCALE_X_LARGE = 1.4399999999999

const double Pango::SCALE_X_SMALL = 0.6444444444444

const double Pango::SCALE_XX_LARGE = 1.728

const double Pango::SCALE_XX_SMALL = 0.5787037037037