问题标签 [gdkpixbuf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
427 浏览

python - GdkPixbuf.PixbufDestroyNotify - NotImplementedError - python gtk3

我正在尝试使用 GdkPixbuf.Pixbuf.new_from_data() ,如 gtk 2.x 中所示,我正在传递 7 个参数。但它给了我一个错误,我需要传递 9 个参数。

我现在正在为 gtk2.x 工作。所以我想出了我需要传递的另外两个参数。

http://developer.gimp.org/api/2.0/gdk-pixbuf/gdk-pixbuf-creating.html

http://developer.gimp.org/api/2.0/gdk-pixbuf/gdk-pixbuf-refcounting.html#GdkPixbufDestroyNotify

参数之一是 GdkPixbuf.PixbufDestroyNotify 类型。我不知道该怎么做。

我正在 ipython 中尝试帮助(GdkPixbuf.PixbufDestroyNotfiy),但出现错误。

错误:NotImplementedError。

我收到以下错误:

这里可能是什么问题?

0 投票
2 回答
2303 浏览

python - 转换 PIL GdkPixbuf

如何在 pixbuf 中转换 PIL 图像?我尝试更改许多示例但没有解决方案

错误

我使用 Pygobject https://live.gnome.org/PyGObject

0 投票
1 回答
153 浏览

python - 合并 gtk subpixbufs

我目前在 python 中玩 gtk.pixbuf。在 API 中, subpixbuf 函数被描述为返回一个与原始 pixbuf 共享数据的 pixbuf :

subpixbuf() 方法创建一个新的 gtk.gdk.Pixbuf,它表示 pixbuf 的一个子区域。新的 pixbuf 与原始 pixbuf 共享其像素,因此写入其中一个会影响两者。

但...

当我试图在 subpixbuf 列表中划分一个 pixbuf 并为每个项目分配一个值时,原始 pixbuf 保持不变。

关于如何从一堆 subpixbufs 组成一个 pixbuf 的任何想法?

谢谢。

0 投票
2 回答
928 浏览

gtk - 将 GIcon 转换为 GdkPixbuf

我正在使用 GAppInfo/GDesktopAppInfo。

GIcon *icon = gtk_app_info_get_icon (G_APP_INFO(appinfo));

现在我需要将它放在 GtkIconView 上,但我发现无法从 GIcon 创建 GdkPixbuf。有人知道吗?非常感谢!

编辑 1:实际上它是 GThemedIcon。

0 投票
1 回答
619 浏览

gtk - 如何修复“错误:gdk-pixbuf/gdk-pixdata.h:没有这样的文件或目录?”

我需要旋转一个 Pixbuf。vala 代码包含

生成文件包含

test_VALAFLAGS = --vapidir=@VAPIDIR@ --pkg gstreamer-0.10 --pkg glib-2.0 --pkg gio-2.0 --pkg posix --thread --pkg gstreamer-app-0.10 --pkg sqlite3 --pkg gtk+ -3.0

不应该 --pkg gtk+-3.0 添加 gdk-pixbuf/gdk-pixdata.h 吗?

0 投票
1 回答
313 浏览

python - PyGTK gtk.gdk.Pixbuf.copy_area 错误地复制 alpha 位

这是一张图片,说明了我遇到的问题:

此图片是使用以下内容创建的:

wherecubecanvasare 的类型gtk.gdk.Pixbufo2i只是一个元组,包含一个等距放置函数的结果,该函数向后拉到前面。

我希望很明显,我遇到的问题是,在将cube具有 alpha 通道的 复制到 时canvas,该copy_area()函数还将目标 Pixbuf 中的位设置为 0 alpha。如果真的只是以偏移量将一个缓冲区流复制到另一个缓冲区流中,这是有道理copy_area()的,但这显然不是我的意图。有没有办法将一个 Pixbuf 的内容复制到另一个中,使用源 Pixbuf 的 alpha 通道作为复制蒙版?

作为参考,这里是 PyGTKcopy_area().

0 投票
1 回答
704 浏览

c++ - 使用 libCurl 和 GdkPixBuff 将图像从 JPEG 保存到 PNG

我正在尝试构建一种算法,该算法从 URL 下载 JPEG 图像并将其作为 PNG 保存到磁盘中。为了实现这一点,我使用了 libCurl,用于下载,以及 GdkPixbuff 库用于其他东西(对于项目限制,我坚持使用 Gdk 库)

这里实现数据的代码:

其中上下文定义如下:

并以这种方式writeDownloadedPic :

最后我尝试以这种方式保存图像:

但是,我得到的是一张带有一堆随机像素的missy png图像,根本没有形成。现在,我确定了图像、宽度和高度的尺寸,但我认为我对计算为宽度* 3的RowStride做了一些混乱。

我哪里错了?

0 投票
1 回答
1973 浏览

python - 从二进制数据创建 gtk.gdk.Pixbuf

我正在努力将二进制数据放入gtk.gdk.pixbuf.

这应该说明我的问题:

这失败了:

ValueError: data length (90825) is less then required by the other parameters (865280)

我目前的解决方法是将二进制数据写入文件,然后Pixbuf从该文件创建一个。那感觉太hacky了。我正在从数据库中读取二进制数据,所以我真的需要一个可以直接从缓冲区创建 pixbuf 的解决方案。

我不明白为什么我只是BLOB从数据库中读取并将其写入文件会很容易 - 然后将文件作为 pixbuf 加载,但更难直接从缓冲区中获取!

我究竟做错了什么?

0 投票
1 回答
10104 浏览

c++ - gdk pixbuf 从内存中加载图像

使用 GTK+ 3.6 我想显示来自内存缓冲区的图像,而不是磁盘上的文件。我有一个const char *data图像数据,我正在尝试从中创建一个 GTK 图像。到目前为止,我已经尝试了两种我认为可行的方法。两者都使用 GdkPixbuf,因此要求图像数据为guchar* (unsigned char*).

有了这个要求,我必须转换数据:

然后我尝试了以下方法:

  1. gdk_pixbuf_loader_write使用.将数据写入 GdkPixbufLoader 在这里我收到一个错误"Unrecognized image file format",或者如果我创建具有特定类型 (jpg) 的加载程序,我收到一个错误,指出它不是 JPG 文件格式(它是,如下所述)。

    编辑:一些代码:

    编辑 03/01/2013:从写入函数中删除了步幅参数 - 打印错误。

    开罗表面也不能正常工作。显示黑屏和噪音。

  2. 初始化 pixbuf,gdk_pixbuf_new_from_data然后图像看起来像电视噪声,这表明数据错误(并且它已被投射),或者其他参数错误(图像行步幅,但不是 :))。

foo.jpg出现错误后,我只是尝试使用将数据写入文件ofstream,是的,我得到了一个正常工作的图像文件。终端中的file命令确认它是一个 JPEG 图像,并且通过一个简单的代码块,我从该 foo.jpg 创建了一个 GdkPixbuf 来检查它的行步幅值,它与我传递给上述函数的值相匹配。

图像数据是否会因演员阵容而损坏,如果是,我该如何解决?我在const char*. 我看过 QtPixmap 并且它也加载了unsigned char*.

我需要使用单独的库吗?(libjpeg?)我安装了 libgtk3-dev。

谢谢!

0 投票
1 回答
187 浏览

c - GTK+ 使用前景色将位图绘制为蒙版

我已经制作了一个自定义字体作为存储在 XPM 图像中的位图,并且希望能够使用可更改的前景色将其绘制到 GdkDrawable 对象。基本上,我想要的是使用图像作为字体并能够更改颜色。任何建议如何做到这一点?