GtkSnapshot

说明 [src]

final class Gtk.Snapshot : Gdk.Snapshot
{
  /* No available fields */
}

GtkSnapshot 协助为小组件创建 GskRenderNode

它以类似于 cairo 上下文的方式运行,并维护一个渲染节点及其关联变换的堆栈。

堆栈顶部的节点是 gtk_snapshot_append_…() 函数操作的节点。使用 gtk_snapshot_push_…() 函数和 gtk_snapshot_pop() 来更改当前节点。

获取 GtkSnapshot 对象的典型方式是作为 Gtk.WidgetClass.snapshot vfunc 的参数。如果您需要创建自己的 GtkSnapshot,请使用 gtk_snapshot_new()

层级

hierarchy this GtkSnapshot ancestor_0 GdkSnapshot ancestor_0--this ancestor_1 GObject ancestor_1--ancestor_0

构造函数

gtk_snapshot_new

创建一个新的 GtkSnapshot

实例方法

gtk_snapshot_append_border

在给定的 outline 中附加一个描边矩形。

gtk_snapshot_append_cairo

创建一个新的 GskCairoNode,并将其附加到 snapshot 的当前渲染节点,而不会更改当前节点。

gtk_snapshot_append_color

创建一个新的渲染节点,将 color 绘制到给定的 bounds 中,并将其附加到 snapshot 的当前渲染节点。

gtk_snapshot_append_conic_gradient

将带有给定 stop 的锥形渐变节点附加到 snapshot 中。

gtk_snapshot_append_fill

填充路径颜色的实用方法。

自:4.14

gtk_snapshot_append_inset_shadow

将内嵌阴影附加到 outline 中给出的方框。

gtk_snapshot_append_layout

创建渲染节点以用给定的前景色 color 渲染 layout,并将其附加到 snapshot 的当前节点,而不会更改当前节点。可以使用 gtk_widget_get_color() 获取小部件的当前主题前景色。

gtk_snapshot_append_linear_gradient

将带有给定 stop 的线性渐变节点附加到 snapshot 中。

gtk_snapshot_append_node

node附加到 snapshot 的当前渲染节点,而不会更改当前节点。

gtk_snapshot_append_outset_shadow

将外嵌阴影节点附加到 outline 中给出的方框周围。

gtk_snapshot_append_radial_gradient

将带有给定 stop 的径向渐变节点附加到 snapshot 中。

gtk_snapshot_append_repeating_linear_gradient

将带有给定 stop 的重复线性渐变节点附加到 snapshot 中。

gtk_snapshot_append_repeating_radial_gradient

将带有给定 stop 的重复径向渐变节点附加到 snapshot 中。

gtk_snapshot_append_scaled_texture

创建一个新的渲染节点,将 texture 绘制到给定的 bounds 中,并将其附加到 snapshot 的当前渲染节点。

自:4.10

gtk_snapshot_append_stroke

描边路径颜色的实用方法。

自:4.14

gtk_snapshot_append_texture

创建一个新的渲染节点,将 texture 绘制到给定的 bounds 中,并将其附加到 snapshot 的当前渲染节点。

gtk_snapshot_free_to_node

返回由 snapshot 构造的节点,并释放 snapshot

gtk_snapshot_free_to_paintable

返回由 snapshot 构造的节点的可绘内容,并释放 snapshot

gtk_snapshot_gl_shader_pop_texture

从渲染节点的堆栈中删除最顶部的元素,并将其添加到其下方的最接近的 GskGLShaderNode 中。

已弃用:4.16 

gtk_snapshot_perspective

应用透视投影变换。

gtk_snapshot_pop

从渲染节点的堆栈中删除最顶部的元素,并将其附加到其下方的节点。

gtk_snapshot_push_blend

将两张图像使用给定的混合模式混合在一起。

gtk_snapshot_push_blur

模糊图像。

gtk_snapshot_push_clip

将图像裁剪成矩形。

gtk_snapshot_push_color_matrix

通过在 RGB 空间应用仿射变换来修改图像颜色。

gtk_snapshot_push_cross_fade

使用给定的 progress 拍摄两张图像之间的交叉淡化操作。

gtk_snapshot_push_debug

插入一个带有消息的调试节点。

gtk_snapshot_push_fill

使用图像填充由 pathfill_rule 给出的区域,并丢弃区域之外的所有内容。

自:4.14

gtk_snapshot_push_gl_shader

推动 GskGLShaderNode

已弃用:4.16 

gtk_snapshot_push_mask

在首次调用 gtk_snapshot_pop() 之前,将记录蒙版操作的蒙版图像。

自:4.10

gtk_snapshot_push_opacity

修改图像的不透明度。

gtk_snapshot_push_repeat

创建重复子节点的节点。

gtk_snapshot_push_rounded_clip

将图片剪裁成圆角矩形。

gtk_snapshot_push_shadow

向图像添加阴影。

gtk_snapshot_push_stroke

用由 `stroke` 和图像指定的属性描边给定的 `path`。

自:4.14

gtk_snapshot_render_background

根据 `context` 为 CSS 背景创建渲染节点,并将它追加到 `snapshot` 的当前节点(而不改变当前节点)。

已弃用: 4.10 

gtk_snapshot_render_focus

根据 `context` 为焦点轮廓创建渲染节点,并将它追加到 `snapshot` 的当前节点(而不改变当前节点)。

已弃用: 4.10 

gtk_snapshot_render_frame

根据 `context` 为 CSS 边框创建渲染节点,并将它追加到 `snapshot` 的当前节点(而不改变当前节点)。

已弃用: 4.10 

gtk_snapshot_render_insertion_cursor

使用 `snapshot` 在 `layout` 的指定索引处绘制文本插入符。

已弃用: 4.10 

gtk_snapshot_render_layout

根据 `context` 中的样式信息为渲染 `layout` 创建渲染节点,并将它追加到 `snapshot` 的当前节点(而不改变当前节点)。

已弃用: 4.10 

gtk_snapshot_restore

将 `snapshot` 还原到通过前一个 `gtk_snapshot_save()` 调用保存的状态,并从保存的状态栈中移除该状态。

gtk_snapshot_rotate

在二维空间中,将 @snapshots 坐标系旋转 angle 度 - 或者从三维角度来看,绕 Z 轴旋转。旋转以 (0, 0) 原点绕 snapshots 当前坐标系进行。

gtk_snapshot_rotate_3d

围绕 `axis` 将 snapshots 坐标系旋转 angle 度。

gtk_snapshot_save

复制 `snapshot` 的当前状态,并将其保存在内部栈中。

gtk_snapshot_scale

通过给定因子缩放 snapshots 的二维坐标系。

gtk_snapshot_scale_3d

通过给定因子缩放 snapshots 坐标系。

gtk_snapshot_to_node

返回由 `snapshot` 构造的渲染节点。

gtk_snapshot_to_paintable

返回封装由 `snapshot` 构造的渲染节点的可绘制对象。

gtk_snapshot_transform

通过给定的 `transform` 转换 snapshots 坐标系。

gtk_snapshot_transform_matrix

通过给定的 `matrix` 转换 snapshots 坐标系。

gtk_snapshot_translate

在二维空间中,通过 `point` 平移 snapshots 坐标系。

gtk_snapshot_translate_3d

通过 `point` 平移 `snapshot`s 坐标系。

GObject (43) 继承的方法

请参阅 GObject,获取完整的方法列表。

信号

GObject (1) 继承的信号
GObject::notify

当对象通过 g_object_set_property()、g_object_set() 等设置属性值时,会发出 notify 信号。

类结构

struct GtkSnapshotClass {
  /* no available fields */
}

没有可用的描述。