从 GIMP (Script-Fu) 中的选择中移除透明像素

Remove transparent pixels from selection in GIMP (Script-Fu)

我正在为 GIMP 编写脚本,但一直卡在这个上面。

我想从用户选择中取消选择透明像素。

GIMP 不接受 RGBA 值,所以我不能只写:

(gimp-image-select-color inImage CHANNEL-OP-SUBTRACT inLayer '(0 0 0 0))

出现错误,因为颜色列表不能有 4 个元素。

如何从当前选择中减去 alpha 通道透明度? 可以使用 GIMP UI(通过 Color Tool 在 Select 中选择减法开关)。我想用脚本实现同样的效果。

将您的选区与 non-transparent 像素的选区相交,换句话说:

  • 保存选择蒙版
  • Alpha 到选择
  • 反向选择
  • 与保存的选择蒙版相交

(或vice-versa)