Function
Pangoshape_full
since: 1.32
Declaration [src]
void
pango_shape_full (
const char* item_text,
int item_length,
const char* paragraph_text,
int paragraph_length,
const PangoAnalysis* analysis,
PangoGlyphString* glyphs
)
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(), except it also can optionally take
the full paragraph text as input, which will then be used to perform
certain cross-item shaping interactions. If you have access to the broader
text of which item_text is part of, provide the broader text as
paragraph_text. If paragraph_text is NULL, item text is used instead.
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_full().
Available since: 1.32
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:
intThe 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:
intThe length (in bytes) of
paragraph_text. -1 means nul-terminated text. analysis-
Type:
PangoAnalysisPangoAnalysisstructure frompango_itemize().The data is owned by the caller of the function. glyphs-
Type:
PangoGlyphStringGlyph string in which to store results.
The argument will be set by the function. The returned data is owned by the function.