通过脚本自动化gimp来节省您的时间和精力

在GIMP中使用Python脚本自动化操作可以节省大量时间。这并不容易开始,但一旦你知道这些基本知识,你会很好的你的方式!...

照片编辑往往涉及到许多重复的过程,尤其是当你正在处理一个大相册的图像。如果您愿意涉猎脚本,可以使用GIMP来自动化这些操作,以节省您的时间和精力。

save-time-gimp

在GIMP中使用Python编写脚本并不容易,但是如果您准备好学习诀窍的话,这是非常有益的。下面是如何开始使用几个非常基本的脚本。

创建python脚本

在我们开始认真地进行我们的项目之前,我们需要打下一些基础。首先,打开文本编辑器,然后复制并粘贴以下代码:

#!/usr/bin/python from gimpfu import * def first_plugin(timg, tdrawable): print "Hello, world!" register( "hello_world", "Presents a Hello, World! message", "Presents a Hello, World! message", "Brad Jones", "Brad Jones", "2017", "<Image>/Image/Hello, World!", "RGB*, GRAY*", [], [], first_plugin) main()

下面是上面发生的事情的简要概述。前两行初始化脚本,并让我们访问一些有用的库。def first\u plugin后面的代码部分包含我们给出的GIMP指令。单词register后面的信息是GIMP需要了解的关于插件的所有信息。

这是我们需要提供给GIMP的信息来注册我们的脚本:

  • Name:命令的名称(例如hello_uWorld)
  • Blurb:对命令的简要描述(例如,向您介绍一个Hello,World!信息)
  • 帮助:将显示的帮助消息(例如,显示一个Hello,World!信息)
  • 作者:创作剧本的人(如布拉德·琼斯)
  • 版权所有人(如布拉德·琼斯)
  • 日期:脚本创建日期(例如2017年)
  • 标签:在菜单中引用脚本的方式(例如<Image>/Image/Hello,World!)
  • 参数:附加到插件的参数(例如[]--本例中为无)
  • 结果:插件的结果(例如,[]--本例中为无)
  • 函数:用于引用代码中操作的名称(例如,first\u插件)

最后,我们需要调用main()。

保存脚本,然后从“另存为类型”下拉列表中选择所有文件。确保在文件名中包含.py扩展名。

save script

接下来,将此文件放入GIMP的插件文件夹中,该文件夹位于Windows的Program Files&gt;GIMP 2&gt;lib&gt;GIMP&gt;2.0(或Mac上的~\Library\Application Support\GIMP\2.8\scripts)中。您可能需要管理员权限才能执行此操作。

初始化GIMP并打开图像菜单。你应该看看你好,世界!就在底部。

gimp hello world

现在是时候让我们的脚本更有用一点了。

添加一些功能

现在我们要重写我们的脚本,让它真正做一些实际的事情。再次打开文本文件,复制并粘贴以下代码:

#!/usr/bin/env pythonfrom gimpfu import *def test_script(customtext, font, size): img = gimp.Image(1, 1, RGB) layer = pdb.gimp_text_fontname(img, None, 0, 0, customtext, 10, True, size, PIXELS, font) img.resize(layer.width, layer.height, 0, 0) gimp.Display(img) gimp.displays_flush()register( "python_test", "TEST", "TEST", "Brad Jones", "Brad Jones", "2017", "TEST", "", [ (PF_STRING, "customtext", "Text string", 'Scripting is handy!'), (PF_FONT, "font", "Font", "Sans"), (PF_SPINNER, "size", "Font size", 100, (1, 3000, 1)), ], [], test_script, menu="<Image>/File/Create")main()

这比我们的你好,世界要复杂一点!但它的结构非常相似。首先我们创建一个图像。

img = gimp.Image(1, 1, RGB)

然后我们根据用户提供的参数添加文本。

layer = pdb.gimp_text_fontname(img, None, 0, 0, customtext, 10, True, size, PIXELS, font)

接下来,我们根据文本的大小调整图像的大小。

img.resize(layer.width, layer.height, 0, 0)

最后,我们告诉GIMP在屏幕上显示图像。

gimp.Display(img)gimp.displays_flush()

剩下要做的就是添加GIMP需要的注册信息,并添加一些我们之前没有包含的参数设置。

[ (PF_STRING, "customtext", "Text string", 'Scripting is handy!'), (PF_FONT, "font", "Font", "Sans"), (PF_SPINNER, "size", "Font size", 100, (1, 3000, 1)), ],

像拯救世界一样拯救这个世界!脚本,将其移动到plug-ins文件夹,然后重新启动GIMP。前往File&gt;Create&gt;TEST试用我们的插件。

test gimp plugin

您将看到一个窗口,可以在其中设置各种参数。

test parameters gimp plugin

单击OK,您将创建一个类似这样的图像。

test image gimp plugin

这演示了如何在GIMP中使用脚本来自动化由几个不同操作组成的过程。现在,让我们编写一个脚本,对已经打开的图像进行更改。

反转图层

一旦您习惯了在GIMP中使用Python编写脚本,就可以自动对图像进行各种调整。但是,我们将通过实现一个反转当前层颜色的脚本来尽可能简单地开始。

要开始,请再次打开文本编辑器,然后复制并粘贴以下脚本:

#!/usr/bin/env pythonfrom gimpfu import *def invert_current_layer(img, layer): pdb.gimp_invert(layer) register( "python_fu_invert_current_layer", "Invert layer", "Invert colors in the current layer", "Brad Jones", "Brad Jones", "2017", "<Image>/Filters/Custom/Invert current layer", "*", [], [], invert_current_layer) main()

这源于我们之前创建的脚本。前几行代码奠定了一些基础,最后几行代码负责注册。以下是重要部分:

def invert_current_layer(img, layer): pdb.gimp_invert(layer)

我们正在定义我们的流程,告诉GIMP我们要引用哪些组件,然后使用pdb.gimp\U反转指示程序调整颜色。将其保存为.py文件格式,将其添加到plug-ins文件夹中,然后打开GIMP检查其是否工作。

导航到“过滤器”&gt;“自定义”&gt;“反转当前图层”。

invert process gimp plugin

你应该得到一个类似于上面的结果。当然,在GIMP中执行反转操作已经相对容易了,但这只是一个起点。编写自己的脚本的好处在于,你可以创建完全适合自己的东西。

gimp脚本的下一步

一旦您了解了GIMP中脚本的基本知识,就可以开始尝试了。想想你经常做什么样的过程,这对自动化很有用。接下来是棘手的部分:找出如何使用代码来实现这些想法。

幸运的是,GIMP可以提供一些帮助。导航到“帮助”&gt;“过程浏览器”,您将能够访问可以使用的所有过程的列表。

procedure browser

过程浏览器不仅列出过程本身,还提供有关需要在代码中提供哪些参数的信息。

您可以滚动整个过程列表,或者使用搜索栏缩小字段范围。然后,只需将过程名称和参数**脚本。

parameters

在编写脚本时,这些信息将是非常宝贵的。从一些简单的东西开始,在你意识到它之前,你将**一些真正有用的自动化流程!

你需要帮助编写GIMP脚本吗?或者你有什么建议想和其他用户分享?不管怎样,为什么不加入下面评论部分的对话呢?

图片来源:Volkova Vera/Shutterstock

  • 发表于 2021-03-13 15:27
  • 阅读 ( 226 )
  • 分类:IT

你可能感兴趣的文章

6款最佳windows文件组织应用程序和文件管理器软件

... 如果您在组织文件时遇到问题,请考虑使用自动化实用程序应用程序。文件处理程序监视对文件夹的更改,并根据一组规则执行操作。它使用条件if and then语句,就像IFTTT一样。首先,创建一个关于您要对文件执行...

  • 发布于 2021-03-11 08:46
  • 阅读 ( 469 )

powershell foreach、while和其他循环的工作原理

...,您已经掌握了开始构建健壮脚本的大部分技能。无论是自动化您的家庭钻机或节省时间在工作中,循环帮助您的脚本做更多。将这些循环与错误处理相结合,可以使脚本编写超出基本的范围。这为更高级的语言打开了大门。 ...

  • 发布于 2021-03-11 23:17
  • 阅读 ( 452 )

如何用photoshop脚本自动化photoshop

...及如何修复过度曝光的照片,所以一旦掌握了基本知识,自动化是下一个合乎逻辑的步骤。 ...

  • 发布于 2021-03-13 07:15
  • 阅读 ( 281 )

让您的照片在自定义背景下闪耀:下面是如何使用gimp

... 首先,通过单击、拖动或两者的组合,在前景对象周围绘制一个非常粗略的轮廓。不需要精确。我们在这个阶段所做的就是告诉GIMP图像的哪些区域包含前景元素,哪些区域包含...

  • 发布于 2021-03-13 20:22
  • 阅读 ( 235 )

如何用google脚本在google表单中发送电子邮件

googlescripts是一个强大的工具,可以用来自动化Google生产力工具,比如表单和文档。自动发送电子邮件的能力使它成为一个非常强大的工具。 ...

  • 发布于 2021-03-14 04:11
  • 阅读 ( 715 )

7个简单的windows脚本,为您节省时间和精力

...你只需点击几下就可以关闭Windows10电脑,但这足够快吗?通过实现PowerShell脚本,我们可以在桌面上的任何位置放置一个关机按钮。此外,我们还可以同时学习如何**脚本快捷方式。 ...

  • 发布于 2021-03-15 21:37
  • 阅读 ( 289 )

使用sierra清理mac的存储空间,或者直接使用automator

...Sierra中,您可以单击“管理”以获取可帮助您节省空间的自动化工具。 ...

  • 发布于 2021-03-17 02:14
  • 阅读 ( 199 )

5种节省时间和精力的专业电子邮件写作方法

...其他模板不同的是,他解释了你需要写什么以及为什么。通过电子邮件建立个人联系是非常重要的,而且要足够真实,收件人不会认为你是在写剧本。 ...

  • 发布于 2021-03-19 12:29
  • 阅读 ( 193 )

初学者快速自动热键指南

... 在Windows中创建新快捷方式。 自动化数据输入工作和自动填写在线表格。 扩展缩写,例如将“IDK”扩展为“我不知道” 通过键盘或操纵杆控制鼠标 ...

  • 发布于 2021-03-21 16:59
  • 阅读 ( 324 )

3个令人印象深刻的google文档脚本,可自动执行文档

...一点是,您可以使用强大的Google脚本创建一些非常有用的自动化。 ...

  • 发布于 2021-03-22 16:38
  • 阅读 ( 229 )