构造函数
GdkPixbufPixbufnew_from_inline
已弃用:2.32
声明 [src]
GdkPixbuf*
gdk_pixbuf_new_from_inline (
gint data_length,
const guint8* data,
gboolean copy_pixels,
GError** error
)
描述 [src]
从适合在程序中作为内联数据存储的平面表示形式创建一个GdkPixbuf。
如果您想随程序一起分发图像,但又不想依赖任何外部文件,这很有用。
GdkPixbuf附带一个名为gdk-pixbuf-csource的程序,它可以用于将GdkPixbuf转换为这样的内联表示。
在几乎所有情况下,您都应该将--raw选项传递给gdk-pixbuf-csource。一个示例调用是
gdk-pixbuf-csource --raw --name=myimage_inline myimage.png
对于典型的只读静态内联pixbuf情况,除非您打算写入它,否则不需要复制像素数据,因此您可以传递FALSE作为copy_pixels。如果您将--rle传递给gdk-pixbuf-csource,即使copy_pixels为FALSE,也会进行复制,所以使用此选项通常不是一个好主意。
如果您从编译到程序中的const内联数据创建pixbuf,则可以安全地忽略错误并禁用长度检查,因为事情总是会成功
pixbuf = gdk_pixbuf_new_from_inline (-1, myimage_inline, FALSE, NULL);
对于非const内联数据,您可能会缺少内存。对于在运行时位于不确定位置的内联数据,您可能会遇到损坏的内联数据。
自2.32版本起已弃用
使用GResource代替。
参数
data_length-
类型:
gint数据参数的长度(以字节为单位),或-1以禁用长度检查。
data-
类型:一个
guint8数组的数组字节数据,包含一个序列化的
GdkPixdata结构。数组的长度由 data_length参数指定。数据由函数的调用者拥有。 copy_pixels-
类型:
gboolean是否复制像素数据,或使用指向结果的pixbuf的直接指针
data。 error-
类型:
GError **用于存储一个可恢复错误的返回位置。
参数可以为 NULL。如果返回位置不为 NULL,则必须将其初始化为NULL的GError*。如果没有错误,构造函数将通过参数将其初始化为 NULL。在发生错误的情况下,参数将被设置为一个新的分配的 GError;调用者将拥有数据,并负责释放它。
返回值
类型:GdkPixbuf
一个新创建的pixbuf。
| 函数的调用者负责拥有数据,并负责释放它。 |