GIMP可以让你在Python中制作插件,我想要做的就是调用GIMP函数,就像我在这个插件里面做的一样,但是这会返回以下错误,因为GIMP没有找到任何正在运行的GIMP Core来使用。如何在Python脚本中使用GIMP?
LibGimpBase-ERROR **: gimp_wire_write_msg: the wire protocol has not been initialized aborting...
我想知道是否有可能?如果是,如何?
谢谢
GIMP可以让你在Python中制作插件,我想要做的就是调用GIMP函数,就像我在这个插件里面做的一样,但是这会返回以下错误,因为GIMP没有找到任何正在运行的GIMP Core来使用。如何在Python脚本中使用GIMP?
LibGimpBase-ERROR **: gimp_wire_write_msg: the wire protocol has not been initialized aborting...
我想知道是否有可能?如果是,如何?
谢谢
GIMP的Python扩展需要从GIMP实例中运行。如果您想使用Python中的GIMPśAPI,则必须在没有图形用户界面的情况下运行GIMP(从命令行传递-i
参数),并使用-b
命令行参数运行api的自定义调用 - 因此,您可以运行您python_fu_do_it程序,从命令行调用:
gimp -i -b \(python-fu-do-it \)
注意,这是获得运行GIMP-python扩展,唯一的办法:你必须从GIMP进程中运行它。
在现实生活中,一件有用的事情可能是让你的gimp插件公开一些对你想要的图像执行操作的函数,并通过xmlrpc或jsonrpc服务器导出 - 这很容易在Python中完成。然后,您使用上述方法启动此“映像服务器”,并创建通过xmlrpc调用您的gimp使用函数的独立python脚本。
我不得不说,下面的语句是不正确的:
“GIMP的Python扩展需要从一个GIMP实例中运行。”
您不必运行gimp就可以使用通过python gimpfu API公开的函数。
在任何Python程序,对于Linux只是你以下几点:
import sys
sys.path.append('/usr/lib/gimp/2.0/python/')
import gimpfu
其中 '/usr/lib/gimp/2.0/python/' 是GIMP的安装路径。
问候,卡罗。
一个选择是在gimp内部创建一个侦听器进程作为脚本(这可能会影响锁定UI,这里需要进行实验),然后让它听取beanstalkd工作队列。那么在你的外部进程中,向beanstalk队列发出工作请求,然后beanstalk可以在进程外处理这些命令。
综上所述,99%的使用案例我可以想象你想要做到这一点,或许ImageMagick比gimp更适合你选择,它可以让我想象你感兴趣的任务。
GIMP可以通过命令行启动无UI。它工作正常,你可以把你的脚本放在里面去听工作。 – AsTeR
这个包可以让你开始。 查看“.bat”文件。
使用'subprocess'模块脚本开始做工作之前启动GIMP的实例? –
[使用PHP或Python连接GIMP](http:// stackoverflow。COM /问题/ 3237252 /连接,GIMP与 - PHP-或-蟒蛇) – unutbu
我认为,这不是一个重复的,因为我明确地问怎么没有插件的使用进行了。我必须尝试子进程调用,但我认为这会失败。 – AsTeR