函数
Pangoitemize
声明 [src]
GList*
pango_itemize (
PangoContext* context,
const char* text,
int start_index,
int length,
PangoAttrList* attrs,
PangoAttrIterator* cached_iter
)
描述 [src]
将一段文字分解为具有始终如一的文本方向等级和字体的段落。
text
的每个字节都将在返回列表的其中一项中,生成的项目列表将按逻辑顺序排列(项目的开始偏移量是升序的)。
cached_iter
应该是 attrs
上的一个迭代器,当前定位于包含 start_index
之前或包含 start_index
的一个范围;cached_iter
将前进到涵盖 start_index
+ length
之后的那个位置的范围。(即在循环中进行项目化时,只需要不断传递相同的 cached_iter
)。
参数
context
-
类型:
PangoContext
一个包含影响项目化过程的信息的结构。
数据由函数调用者拥有。 text
-
类型:
const char*
要项目化的文本。必须是有效的 UTF-8。
数据由函数调用者拥有。 该值为一个以 NUL 结尾的 UTF-8 字符串。 start_index
-
类型:
int
要处理的
text
中的第一个字节。 length
-
类型:
int
在
start_index
之后要处理的字节数(而不是字符数)。该值必须大于等于 0。 attrs
-
类型:
PangoAttrList
应用于
text
的一组属性。数据由函数调用者拥有。 cached_iter
-
已缓存的属性迭代器。
该参数可以为 NULL
。数据由函数调用者拥有。
返回值
类型: PangoItem*
的一个列表
一个 PangoItem
结构的 GList
。项目应该使用 pango_item_free()
结合 g_list_free_full()
来释放。
函数调用者拥有该数据的所权,并且负责释放它。 |