问题标签 [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.
python-2.7 - GdkPixbuf - 从 Python 将像素数据保存到文件
我正在尝试在 Windows 中使用 Python 中的 GdkPixbuf 将一些像素保存到文件中。我正在使用优秀的PyGI AIO (3.14.0)二进制文件。
放大后的结果如下:
显然,前几个像素已损坏。损坏像素的数量似乎因图像尺寸而异。但是,一些像素设法保持完整。我的代码中一定有错误,或者内存以某种方式损坏。可以对更大的图像进行编码,并且错误总是出现在前几个像素中。这可能是字符串编码问题还是什么?
编辑:我在 OS X 上测试过这个程序,错误非常相似。因此,这似乎是 Python 绑定到 GdkPixbuf 的一个普遍问题,可能与this相关。这是由脚本的修改版本生成的更大的 PNG。红色和绿色线的网格是预期的输出,而图像上半部分的像素只是噪声。
python - 在 Gtk TreeView 树中显示图标或颜色
我在加载文件或在 Gtk TreeView(GTK3 的 Python 绑定)的一列中显示颜色时遇到困难。取自 QGIS 的示例在第一行显示一个图标,在第二行显示一个蓝色圆圈。颜色取自图层属性:
我的代码看起来像这样,但没有在同一目录中加载 icon.png 文件:
GTK3 pixbuf 的文档在这里:
PyGTK 的旧示例在这里,但在处理方式上确实发生了一些变化:
gtk - Gtk3 在 DrawingArea 中加载 PixbufAnimation?
出于我的 gstreamer 应用程序的目的,在我将 DrawingArea 小部件的句柄用于接收元素之前,我对简单的加载器进行了讨论。基本的想法是.gif
在 Gtk.DrawingArea 中加载动画,但我遇到了文档问题。我发现了关于PixbufAnimation
和我将它与Gtk.Image
小部件一起使用,但相同的逻辑不起作用,Gtk.DrawingArea
并且由于它没有add
方法,我不知道该怎么做,所以作为我最后的手段,我来到这里寻求帮助。
这就是我对 Gtk.Image 所做的:
是否可以使用 DrawingArea 实现相同的目标?
python - 在 Python 中使用 GdkPixbuf.Pixbuf.savev() 的正确语法是什么?
我正在尝试将 GdkPixbuf.Pixbuf 对象的内容保存到 Python 2.7 中的文件中。
似乎文档中出现的 Pixbuf.save() 方法在 Python 中不可用,只有 Pixbuf.savev() 可用。
在 Python 中使用该方法时,我已经从高处和低处搜索了该方法的正确语法,但所有可用的示例都使用旧语法:
尝试使用 Gtk3 会引发错误,因此我需要提供 4 个参数。假设我必须将“质量”和“100”分成两个参数。但是,这样做会引发错误:
Python 解释器回复:
等等。如果有人能告诉我将 GdkPixbuf 保存到 Python 中的文件的正确方法,我将不胜感激。
python - Gtk+3 Gdk Pixbuf.new_from_data 给出“分段错误(核心转储)”错误 139
在我的应用程序中,我有一个 GtkImage 必须显示来自所选文件的已处理图像。所以,在处理程序部分我有:
到这里,一切正常。如果我们这样做:
预期的图像被粘贴在 GtkImage 小部件上。但那是丑陋的方式,不是吗?
所以我尝试:
但结果是“错误 139,分段错误(核心转储)”
我错过了什么?
image - 如何将 GOPixbuf 字符串转换为图像
我有一个使用 Gnumeric 生成的 XML 文件,其中包含图像,在 XML 中存储为 GOPixbuf 字符串。它们看起来像这样:
对于每个字符串,我都有宽度和高度,以及一个 rowstride 参数,如下例所示:
有没有一种合理的方法可以将其转换为图像 - 任何格式都可以?
我熟悉 perl 和图像转换工具(imagemagick、gimp),但我没有通过谷歌搜索 GTK 或 GOffice 文档找到任何文档。
c - 从原始位图数据创建 GdkPixbuf
我正在尝试使用 GDK 将Clean图形库(特别是 ObjectIO)移植到 Linux。该库由一个非特定于操作系统的部分组成,由于兼容性问题我不想触摸它,还有一个我可以触摸的特定于操作系统的部分。
我必须实现的功能之一是从 .bmp 文件中获取原始数据并且必须从中构建一个GdkPixbuf
。该函数必须用 C 编写。
我知道 function gdk_pixbuf_new_from_file()
,但我没有得到文件名(并且无法更改它,因为它位于库的非操作系统特定部分中)。我只得到原始数据。
我看到了这个手册条目,我想我可以使用gdk_pixbuf_new_from_data()
,但这需要你知道图像的行步长,我不确定如何获得它。
有没有办法从文件中获取行跨度?如果不是,我看到的唯一可能性是使用数据创建一个临时文件,然后调用gdk_pixbuf_new_from_file()
- 但这真的很难看。
python - 从 GDK Pixbuf 重建 png 图像
我想通过套接字发送图像 Pixbuf,但接收到的图像只有黑白且失真。以下是我正在使用的步骤:
1) 获取该 Pixbuf 的像素数组
2)序列化像素数组
3) 将序列化的字符串转换为 BytesIO
4)通过套接字发送
在此之后,我必须通过以下方式重建图像:
1) 将接收到的字符串反序列化到其原始像素数组中
2) 从像素数组构建 Pixbuf
3) 保存图像
python - 在不缩放的情况下改进图像的 OCR(使用 PIL、pixbuf)?
我正在尝试在屏幕截图上进行 OCR 识别,在屏幕截图(桌面区域,您单击的区域)后,它转到pibxbuffer,其中内容转到pytesseract。但是使用 pixbuffer 后图像质量很差:它是倾斜的(我试图将它保存在一个目录中,而不是 pixbuffer,并查看了它)。
当我将图像保存到目录时,它没问题(质量)并且识别效果很好。
尝试没有Image.ANTIALIAS
- 没有区别。
(缩放20的目的:我尝试了识别保存在目录中的图像的代码,没有缩放识别质量很差。)
问题是图像偏斜。
python - 从 Gtk3+ 中的 base64 编码图像加载图像
主要问题是,据我所知,没有简单/记录的方法可以从 base64 编码图像加载图像。我使用以下代码将图像编码为 base64(这样我就不需要将所有图像包含在源中,也不应该创建临时文件并在退出时删除它们)。我使用的图像格式.png
是 Gtk3+ 支持的。(来自GdkPixbuf.Pixbuf.get_formats()
我['png']
的结果。我真的很困惑如何为此目的使用 Gtk3+。
我想使用输出例如:
并从base64渲染图像。
作为旁注,tkinter
这很容易通过以下方式完成:
然后在您需要的地方显示图像。
回到 Gtk3+,我没有找到从 base64 加载图像的方法。即使使用GdkPixbuf.Pixbuf.new_from_data
,我的图像也会损坏。我也尝试过Gio.MemoryInputStream.new_from_bytes
,但它说不支持图像的格式。