Function

Pangoshape_with_flags

since: 1.44

Declaration [src]

void
pango_shape_with_flags (
  const char* item_text,
  int item_length,
  const char* paragraph_text,
  int paragraph_length,
  const PangoAnalysis* analysis,
  PangoGlyphString* glyphs,
  PangoShapeFlags flags
)

Description [src]

Convert the characters in text into glyphs.

Given a segment of text and the corresponding PangoAnalysis structure returned from pango_itemize(), convert the characters into glyphs. You may also pass in only a substring of the item from pango_itemize().

This is similar to pango_shape_full(), except it also takes flags that can influence the shaping process.

Some aspects of hyphen insertion and text transformation (in particular, capitalization) require log attrs, and thus can only be handled by pango_shape_item().

Note that the extra attributes in the analyis that is returned from pango_itemize() have indices that are relative to the entire paragraph, so you do not pass the full paragraph text as paragraph_text, you need to subtract the item offset from their indices before calling pango_shape_with_flags().

Available since: 1.44

Parameters

item_text

Type: const char*

Valid UTF-8 text to shape.

The data is owned by the caller of the function.
The value is a NUL terminated UTF-8 string.
item_length

Type: int

The length (in bytes) of item_text. -1 means nul-terminated text.

paragraph_text

Type: const char*

Text of the paragraph (see details).

The argument can be NULL.
The data is owned by the caller of the function.
The value is a NUL terminated UTF-8 string.
paragraph_length

Type: int

The length (in bytes) of paragraph_text. -1 means nul-terminated text.

analysis

Type: PangoAnalysis

PangoAnalysis structure from pango_itemize()

The data is owned by the caller of the function.
glyphs

Type: PangoGlyphString

Glyph string in which to store results.

The data is owned by the caller of the function.
flags

Type: PangoShapeFlags

Flags influencing the shaping process.