问题标签 [gimpfu]

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 回答
1939 浏览

python - Gimp:如何获得路径工具点的坐标?

我是 gimp python-fu 编程的新手,我花了 4 天没有运气来找出最合适的函数,以便获取绘制路径的坐标并在 gtk 消息框上显示输出,如下图所示.

在此处输入图像描述

请考虑我在 Windows 机器上开发

我已经尝试过这样的代码:

有时插件本身不会显示在菜单中,有时根本没有输出。

0 投票
1 回答
5518 浏览

gimp - Python-fu/gimpfu 参数 - “图像”是什么意思?

我一直在尝试从 script-fu 切换到 python-fu,但我无法弄清楚我应该为“image”参数传递什么。在 script-fu 中它只是一个整数,但是当我将相同的整数放入 python-fu 时,它只是说它是错误的类型。与字符串和浮点数相同......我应该在这里放什么?文档只是说它采用的参数是“IMAGE”,但这是什么意思?我在哪里可以找到它?我如何得到它?

这是口译员的照片。

0 投票
1 回答
1988 浏览

gimp - 从 Python 脚本/插件关闭 GIMP 图像

我刚刚编写了我的第一个 GIMP 插件,它可能会生成大量打开的图像(通过循环迭代,每次都创建和保存图像)。当我gimp.image_list()从 Python 控制台调用时,我看到它们都仍然打开,并且 GIMP 的内存使用率比我怀疑的要高。

我想我可以向用户显示这些窗口,但是他们必须在每个窗口上单击关闭。这对我来说似乎比在运行脚本后必须关闭并重新启动 GIMP 更糟糕。

我试过打电话gimp.quit(),但这似乎只是让脚本停止。我一直在筛选API 文档和内置的“过程浏览器”工具,但还没有找到关闭它们的方法。看起来应该很简单。如何关闭一个Image对象,以便 GIMP 将其从内存中卸载并从中取出gimp.image_list()

0 投票
1 回答
734 浏览

python - GIMP python画线很慢

pdb.gimp_paintbrush_default 似乎很慢(几秒钟,使用标准画笔 500 点。线条显然更糟)。是这样吗?使用用户选择的画笔绘制直线时,有没有办法加快速度?

pythonfu 控制台代码:

0 投票
1 回答
964 浏览

python - 如何使用 PyCharm 进行 GIMP 插件开发?

我需要为 GIMP 开发一个插件,并希望继续使用 PyCharm 进行 Python 编辑等。

仅供参考,我在 Windows 上。

在指示 PyCharm 使用 GIMP 附带的 Python 解释器之后:

项目口译员

我还添加了一条路径来gimpfu.py消除以下错误from gimpfu import *

在此处输入图像描述

这修复了导入时的错误,即使设置为Excluded.

我尝试将此目录设置为Sources,Resources并且Excluded仍然得到诸如RGBA-IMAGE, TRANSPARENT_FILL,NORMAL_MODE等常量的错误。

在此处输入图像描述

关于如何扭曲 PyCharm 使其适合 GIMP 插件开发的任何想法?

没有真正从 PyCharm 运行任何代码,它实际上只是被用作一个很好的代码编辑器,促进修订控制等。

0 投票
0 回答
228 浏览

python - gimpfu 插件的撤消堆栈如何工作?

我正在为 GIMP 编写一个 python 插件。该插件操作图像,但撤消堆栈实际上并没有撤消我的插件所做的任何事情。

如何在这种情况下撤消工作?

例如,以下将 RGBA 图像中的第一个图块设置为透明。撤消堆栈将显示“示例”和“[基本图像]”,但切换到基本图像不会撤消透明度。

0 投票
2 回答
1948 浏览

python - 在 Gimp 中使用 python 脚本打开文件,例如 File->Open

TL;DR:如何使用 Python 在 Gimp 中打开图像,就像使用 (File->Open) 一样,以获得Overwrite file.png选项并避免Save the changes to image 'sample.png' before closing?对话框。

我为 Gimp 编写了一个 Python 脚本,它对选定区域进行了一些修改,然后将其保存为 PNG。之后,我想打开文件,以便用户可以检查一切是否正确或更改某些内容。由于插件的用户不一定知道如何使用 Gimp,因此"Save the changes to image 'sample.png' before closing?" 对话框可能会令人困惑。
我目前使用的方法是

0 投票
3 回答
758 浏览

python - 从外部模块调用 gimp-fu 函数

我正在尝试为 GIMP 编写一种包装器库,以使我的生成艺术项目更容易,但是我在与包装器模块中的 gimpfu 交互时遇到了问题。以下插件代码运行良好,并显示带有水平线的图像:

'line' 类在 basicObjects 中定义,并且按预期运行,但是如果我尝试将 'pdb.gimp_pencil(background,Line.pointcount,Line.printpoints())' 替换为 'Line.draw(background)',并将 draw() 函数添加到 line 类,如下所示:

图像未呈现,gimp 错误控制台中未显示任何消息。如何从外部文件进行 pdb 调用?使包装器成为一个单独的插件会有所帮助吗?

0 投票
1 回答
1935 浏览

python - Gimp 菜单中未显示 Python-fu 脚本

我一直在Gimp:python 脚本没有显示在菜单中,它对我没有帮助。这是我一步一步尝试的:

1.我在 Mac OS X 10.9.5 上从命令行运行 Gimp 2.8.16,gimp因为我的.bashrc文件包括

我查看终端输出,我看到很多消息,但没有弹出任何问题(你想要这里的转储吗?)。我一开始就看到了,Enabling internal Python...所以应该很好。

2. Filters > Python-Fu > Console 调出控制台,有

——所以,python 似乎又在工作了。

3.因为这里的这个技巧,我尝试运行一个 Python 脚本。我打开一张图片并运行过滤器 > 渲染 > 云 > 雾。像魅力一样工作——在控制台中,当窗口启动时,我确实收到了一些类型转换警告:

我搜索了我的计算机,foggify.py 实际上在其中,/Applications/GIMP.app/Contents/Resources/lib/gimp/2.0/plug-ins/foggify.py因此这证明 Python 正在工作,但不能证明它正在加载脚本。我有点困惑,因为foggify.py只有 77 行,而不是 30312。

4. GIMP > Preferences > Folders > Scripts 显示 GIMP 应该为脚本加载以下目录:

我没有使用/Applications/GIMP.app/Contents/Resources/share/gimp/2.0/scripts,但它有很多*.scm文件(所以,可能都在 Scheme 中)。我自己从来没有在这里添加任何东西。

5.我只有一个脚本:ls -l "/Users/julio/Library/Application Support/Gimp/2.8/scripts"yield

(没有其他的)

6.这是我的minimal.py

7.已经在上面指示的目录中运行gimp,我在“工具”菜单中看不到任何“最小”项。minimal.py scripts

我还尝试了下面的变体,它也不起作用:

0 投票
2 回答
156 浏览

python - 动态图像处理服务

我需要建议。我想创建网页,用户可以在其中上传他们的图片,在服务器端我想将这些图片放入准备好的图片模板并显示在页面上。可能吗?GIMP脚本可以吗?有任何想法吗?