函数

Gdkpango_layout_line_get_clip_region

声明 [src]

cairo_region_t*
gdk_pango_layout_line_get_clip_region (
  PangoLayoutLine* line,
  int x_origin,
  int y_origin,
  const int* index_ranges,
  int n_ranges
)

说明 [src]

获取包含文本给定范围绘制区域的裁剪区域。

x_originy_origin是布局的左上角位置。index_ranges应包含布局文本中的字节范围。对于行内或行外索引,裁剪区域将包含行左侧或右侧的空间(到布局边界框)。这样做是为了将选择项绘制到布局的边缘。但是,裁剪区域使用行坐标,而不是布局坐标。

请注意,返回的区域与文本范围的逻辑范围对应,而不是油墨范围。因此,绘制的线实际上可能会触及裁剪区域之外的区域。裁剪区域主要用于突出显示文本部分,例如在选中文本时。

此函数不直接对语言绑定可用。

参数

类型: PangoLayoutLine

一个PangoLayoutLine

此函数的数据由调用方所有。
x_origin

类型: int

在该裁剪中准备绘制布局行的X像素。

y_origin

类型: int

在该裁剪中准备绘制布局行的基准线像素。

index_ranges

类型: int数组

布局中字节索引的数组,其中数组的偶数成员是开始索引,奇数元素是结束索引。

此函数的数据由调用方所有。
n_ranges

类型: int

index_ranges中的范围数,即index_ranges大小的一半。

返回值

类型: cairo_region_t

包含给定范围的裁剪区域。

函数的调用方拥有数据的所权,并负责释放它。