Gimp Python 插件不需要当前打开的图像? (插件是通过 FileChooserDialog 到 Open/Export/Close 图像)
Gimp Python plugin without requiring a currently open image? (Plug is to Open/Export/Close image via FileChooserDialog)
需要处理用户可能尚未打开的图像文件。虽然看起来我只能在图像已经打开的情况下启用插件。在图像打开之前,Gimp 2.8 附带的所有 Python 插件都被禁用。通过许多示例进行搜索,似乎找到的每个示例都需要在插件执行之前已经打开图像。
这是一个基本的helloworld.py
#!/usr/bin/env python
import gtk
from gimpfu import *
def plugin_main() :
message = gtk.MessageDialog(type=gtk.MESSAGE_ERROR, buttons=gtk.BUTTONS_OK)
message.set_markup("Please Help")
message.run()
gimp.quit()
register(
"helloworld",
"Saying Hi",
"Saying Hello to the World",
"William Crandell <william@crandell.ws>",
"William Crandell <william@crandell.ws>",
"2015",
"Hello Gimp",
"*",
[],
[],
plugin_main,
menu = "<Toolbox>/Hello/"
)
main()
这运行如何在不打开任何图像文件到 Gimp 的情况下实现?
几乎相关的问题GIMP, python-fu: How to disable "Input image" and "Input drawable"
引自http://www.exp-media.com/content/extending-gimp-python-python-fu-plugins-part-4
Note that I used a Toolbox menu entry field, and emptied the source
image type, this way, our plugin appears in the menu, and you can
select it even if no image is opened.
重要的部分是图像类型,它是插件框架的一部分,请参阅:http://www.gimp.org/docs/python/#plugin_framework
使用 "*"
作为 'image type' 插件期望任何图像作为初始输入的一部分,这意味着当前图像(接受任何类型,因为通配符 *
)将作为插件启动的一部分提供。将类型更改为 ""
相当于说在启动期间没有图像输入,因此允许插件 运行 没有当前打开的图像。
#!/usr/bin/env python
import gtk
from gimpfu import *
def plugin_main() :
message = gtk.MessageDialog(type=gtk.MESSAGE_ERROR, buttons=gtk.BUTTONS_OK)
message.set_markup("Thank you Frederic Jaume -> \nhttp://www.exp-media.com/content/extending-gimp-python-python-fu-plugins-part-4")
message.run()
gimp.quit()
register(
"helloworld",
"Saying Hi",
"Saying Hello to the World",
"William Crandell <william@crandell.ws>",
"William Crandell <william@crandell.ws>",
"2015",
"Hello Gimp",
"",
[],
[],
plugin_main,
menu = "<Toolbox>/Hello/"
)
main()
需要处理用户可能尚未打开的图像文件。虽然看起来我只能在图像已经打开的情况下启用插件。在图像打开之前,Gimp 2.8 附带的所有 Python 插件都被禁用。通过许多示例进行搜索,似乎找到的每个示例都需要在插件执行之前已经打开图像。
这是一个基本的helloworld.py
#!/usr/bin/env python
import gtk
from gimpfu import *
def plugin_main() :
message = gtk.MessageDialog(type=gtk.MESSAGE_ERROR, buttons=gtk.BUTTONS_OK)
message.set_markup("Please Help")
message.run()
gimp.quit()
register(
"helloworld",
"Saying Hi",
"Saying Hello to the World",
"William Crandell <william@crandell.ws>",
"William Crandell <william@crandell.ws>",
"2015",
"Hello Gimp",
"*",
[],
[],
plugin_main,
menu = "<Toolbox>/Hello/"
)
main()
这运行如何在不打开任何图像文件到 Gimp 的情况下实现?
几乎相关的问题GIMP, python-fu: How to disable "Input image" and "Input drawable"
引自http://www.exp-media.com/content/extending-gimp-python-python-fu-plugins-part-4
Note that I used a Toolbox menu entry field, and emptied the source image type, this way, our plugin appears in the menu, and you can select it even if no image is opened.
重要的部分是图像类型,它是插件框架的一部分,请参阅:http://www.gimp.org/docs/python/#plugin_framework
使用 "*"
作为 'image type' 插件期望任何图像作为初始输入的一部分,这意味着当前图像(接受任何类型,因为通配符 *
)将作为插件启动的一部分提供。将类型更改为 ""
相当于说在启动期间没有图像输入,因此允许插件 运行 没有当前打开的图像。
#!/usr/bin/env python
import gtk
from gimpfu import *
def plugin_main() :
message = gtk.MessageDialog(type=gtk.MESSAGE_ERROR, buttons=gtk.BUTTONS_OK)
message.set_markup("Thank you Frederic Jaume -> \nhttp://www.exp-media.com/content/extending-gimp-python-python-fu-plugins-part-4")
message.run()
gimp.quit()
register(
"helloworld",
"Saying Hi",
"Saying Hello to the World",
"William Crandell <william@crandell.ws>",
"William Crandell <william@crandell.ws>",
"2015",
"Hello Gimp",
"",
[],
[],
plugin_main,
menu = "<Toolbox>/Hello/"
)
main()