script-fu控制台的gimp重复层



如何在脚本fu(scheme(控制台上复制一层?

这是我到目前为止所做的:

(gimp-image-list)

这告诉我对我的图像的引用是数字" 1"。

接下来,我得到了要重复的特定层的引用:

(gimp-image-get-layer-by-name 1 "frame25")

的结果告诉我,图层引用是数字" 2"。

我没有看到复制一层的任何功能,但是我看到我可以复制该图层,然后将其插入新图层。

(gimp-image-insert-layer 1 (car (gimp-layer-copy 2 TRUE)) 0 n)

但是n的值是多少?我想插入现有层上方的副本,与复制层在层码头中所做的相同。但是我找不到任何返回堆栈中图层的"位置"(如脚本FU过程浏览器称为gimp-image-insert-layer的第4个参数(的功能。例如," gimp-layer-get-*"功能似乎都没有提到位置。我试图在网络上搜索它,但是大多数人使用"位置"来指代层的偏移,这是完全无关的事情。(gimp-image-insert-layer 1(gimp-layer-copy 2 true(0 n(

而不是 n,放置 (car (gimp-image-get-item-position 1 2))

或一般:

(car (gimp-image-get-item-position IMG LAYER))

n是图层堆栈中层的位置, 0位于顶部(因此要插入底部, n是当前的层数(。

请注意,如果您写一个真实的脚本,图像和图层可以自动作为参数传递(当列表中有几个图像时,很难说出用户感兴趣的一个,而参数中的一个很难是用户与用户交互的图像吗(。

另外,如果这是您在gimp脚本中的第一次尝试,请不要忽略您可以在python中编写脚本(通常要容易得多(。

相关内容

最新更新