作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我从文件加载一些数据:
GInputStream* input_stream;
GFile *file = g_file_new_for_path(file_path);
input_stream = g_file_read(file,generator_cancellable ,NULL);
g_input_stream_read(input_stream, buffer, sizeof (buffer),generator_cancellable,error);
如何将 g_input_stream_read
函数结果加载到 GdkPixbufLoader 对象?
谢谢。
最佳答案
您需要创建一个新的 GdkPixbufLoader
并将从 GInputStream
读取的数据传递给它:
GdkPixbufLoader *loader = gdk_pixbuf_loader_new ();
gint num_bytes = g_input_stream_read (input_stream, buffer, ...);
gdk_pixbuf_loader_write (loader, buffer, num_bytes, error);
但是,如果您执行异步读取或分块读取(例如显示渐进加载的 JPEG 或 PNG),则这是有意义的。如果您只是以阻塞方式一次性读取所有数据,请使用更简单的 gdk_pixbuf_new_from_stream()
。
关于c - 从 g_input_stream_read 将数据加载到 GdkPixbufLoader,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2980671/
我从文件加载一些数据: GInputStream* input_stream; GFile *file = g_file_new_for_path(file_path); input_stream =
我是一名优秀的程序员,十分优秀!