编辑

编辑

我正在尝试使用 GIMP 根据当前活动图像中的用户定义选择自动执行 3 个操作 -

  • 将选择项增加 2
  • 为所选内容添加边框(宽度为 2,边缘有羽化效果)
  • 用颜色 #FF0000 (红色)填充整个选择

我已经发现了Script-Fu Console,并浏览了(gimp-selection-grow image steps)命令,但是现在我有点卡住了。

paramaters文档中简单地说

图像图像图像
步骤脚步增长步数(以像素为单位)(步数 >= 0)

现在steps很明显了,但我被难住了image。当然,在选择上执行操作后,增长应该应用于活动选择吗?

我尝试保持image原样,希望 GIMP 能够意识到我想对活动选择执行增长操作,但我收到了错误错误:(:1)eval:未绑定变量:图像

有人可以帮我开始吗?

编辑

我现在发现了一个使用 Python 向 GIMP 添加脚本的教程(http://www.exp-media.com/content/extending-gimp-python-python-fu-plugins-part-2),并且我的脚本已经注册并且在一定程度上可以运行。

请参阅下面的答案。

但是,仍然存在一个问题——我想让我的菜单项变灰,直到做出选择,而不是始终可见。

答案1

本教程,我现在已经能够几乎完全按照我想要的方式创建插件。

#**
 # Import the relevant modules
 #*
from gimpfu import *


#**
 # Preform the main script function
 #*
def add_border_to_selection(image, drawable, grow_by, border_thickness, border_feather) :
    pdb.gimp_selection_grow(image, grow_by)
    pdb.gimp_selection_border(image, border_thickness)
    pdb.gimp_bucket_fill(drawable, 0, 0, 100, 15, TRUE, 0, 0)
    return


#**
 # Register the plugin
 #*
register(
    "djg-border-and-fill",
    "Border and Fill Selection",
    "This script adds first grows your selection, then adds a border, and finally fills the border in red.",
    "David Gard (DJG-Dev)",
    "GPL V2 License",
    "October 2014",
    "<Image>/Select/Border and Fill...",
    "*",
    [
      (PF_SPINNER, 'grow_by', 'Grow selection by (px)...', 2, (0,5,1)), 
      (PF_SPINNER, 'border_thickness', 'Border selection by (px)...', 2, (0,5,1)), 
      (PF_TOGGLE, 'border_feather', 'Feather border edges', TRUE)
    ],
    [],
    add_border_to_selection,
    )

main()

相关内容