方法

GdkTexturedownload

声明 [src]

void
gdk_texture_download (
  GdkTexture* texture,
  guchar* data,
  gsize stride
)

描述 [src]

texture 下载到本地内存中。

这可能是一个昂贵的操作,因为实际的纹理数据可能位于 GPU 或远程显示服务器上。

下载的数据的数据格式与 CAIRO_FORMAT_ARGB32 相当,因此每个下载的像素需要 4 字节内存。

将纹理下载到 Cairo 图像表面

surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32,
                                      gdk_texture_get_width (texture),
                                      gdk_texture_get_height (texture));
gdk_texture_download (texture,
                      cairo_image_surface_get_data (surface),
                      cairo_image_surface_get_stride (surface));
cairo_surface_mark_dirty (surface);

对于更灵活的下载功能,请参阅 GdkTextureDownloader.

参数

data

类型: 一个guchar数组

指向足够内存的指针,以便填充下载的 texture 数据。

数据由方法的调用者拥有。
stride

类型: gsize

字节行步进。