更改数千张图像的图像背景

时间:2014-04-26 18:35:50

标签: gimp

我需要更改数千张图片的背景颜色。我知道如何在GIMP中逐一进行。但任何想法如何自动成千上万,也许使用脚本?

谢谢!

1 个答案:

答案 0 :(得分:0)

你可以"飞行员" GIMP通过脚本fu或python-fu控制台,以编程方式,tahta以交互方式完善程序。

无论你做什么测试,你都可以在任何一个lnaguages中编写脚本(script-fu实际上是Scheme)。我建议使用Python来处理文件和字符串。

例如,让GIMP打开目录中的所有图像文件(这是一个不适合图像处理的示例):

打开filters->python->console

>>>提示符下输入:

from glob import glob
for name in glob("/my/directory/*jpg"):
    img = pdb.gimp_file_load(name, name)
    pdb.gimp_display_new(img)

for行之后的空格的标识很重要,因为它的Python很重要 划分代码块的方式 - 交互式绑定时不需要4个空格, 每条线的同一个相同的ammoutn)

这将打开agiven目录中的所有jpg文件。当您知道该怎么做时,不要调用pdb.gimp_display_new,而是调用函数来对图像执行操作,使用" img"作为影像的对象。单击" browsw"可以看到GIMP PDB API。 Python控制台窗口中的按钮。

完成操作后,请致电pdb.gimp_file_save将图片导出回fpg或png文件(注意,您使用的文件名不是用于打开图片的文件名,或者它们将被覆盖),并pdb.gimp_image_delete释放该图像使用的内存(这只会删除内存对象,当然不会触摸打开或刚刚导出到磁盘上的图像。)

在运行一批图像之前,您肯定需要尝试在交互模式下调用API函数。要在GIMP中检索对现有打开图像的图像引用,请调用gimp.image_list()(将返回包含所有打开图像的Python列表 - 以获取变量列表中的第一个图像,执行:img = gimp.image_list()[0]

要使用您开发的任何内容创建gimp-python插件,请查看http://www.gimp.org/docs/python/

上的文档