[英]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()
来自http://www.exp-media.com/content/extending-gimp-python-python-fu-plugins-part-4的报价
请注意,我使用了“工具箱”菜单输入字段,并清空了源图像类型,这样,我们的插件就会出现在菜单中,即使没有打开图像也可以选择它。
重要的部分是图像类型,它是插件框架的一部分,请参见: http : //www.gimp.org/docs/python/#plugin_framework
使用"*"
作为“图像类型”时,插件期望任何图像作为初始输入的一部分,这意味着当前图像(接受任何类型,因为通配符*
)将作为插件初始化的一部分提供。 将类型更改为""
相当于说启动期间没有图像输入,因此允许插头在没有当前打开的图像的情况下运行。
#!/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()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.