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:
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 frompango_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.