PgGlyphItem

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.

Constructors

this
this(PangoGlyphItem* pangoGlyphItem, bool ownedRef)

Sets our main struct and passes it to the parent class.

Destructor

~this
~this()
Undocumented in source.

Members

Functions

applyAttrs
ListSG applyAttrs(string text, PgAttributeList list)

Splits a shaped item (PangoGlyphItem) into multiple items based on an attribute list. The idea is that if you have attributes that don't affect shaping, such as color or underline, to avoid affecting shaping, you filter them out (pango_attr_list_filter()), apply the shaping process and then reapply them to the result using this function.

copy
PgGlyphItem copy()

Make a deep copy of an existing #PangoGlyphItem structure.

free
void free()

Frees a #PangoGlyphItem and resources to which it points.

getLogicalWidths
void getLogicalWidths(string text, int[] logicalWidths)

Given a #PangoGlyphItem and the corresponding text, determine the screen width corresponding to each character. When multiple characters compose a single cluster, the width of the entire cluster is divided equally among the characters.

getPgGlyphItemStruct
PangoGlyphItem* getPgGlyphItemStruct(bool transferOwnership)

Get the main Gtk struct

getStruct
void* getStruct()

the main Gtk struct as a void*

letterSpace
void letterSpace(string text, PangoLogAttr[] logAttrs, int letterSpacing)

Adds spacing between the graphemes of @glyph_item to give the effect of typographic letter spacing.

split
PgGlyphItem split(string text, int splitIndex)

Modifies @orig to cover only the text after @split_index, and returns a new item that covers the text before @split_index that used to be in @orig. You can think of @split_index as the length of the returned item. @split_index may not be 0, and it may not be greater than or equal to the length of @orig (that is, there must be at least one byte assigned to each item, you can't create a zero-length item).

Properties

glyphs
PgGlyphString glyphs [@property getter]
PgGlyphString glyphs [@property setter]

corresponding #PangoGlyphString.

item
PgItem item [@property getter]
PgItem item [@property setter]

corresponding #PangoItem.

Static functions

getType
GType getType()

Variables

ownedRef
bool ownedRef;
Undocumented in source.
pangoGlyphItem
PangoGlyphItem* pangoGlyphItem;

the main Gtk struct

Meta