如何跨多个图层描边同一图层

时间:2016-04-25 11:22:55

标签: gimp

在gimp中,我有大约98层。我有一条路,我想在所有层上划过。有没有办法在没有单独浏览每一层的情况下做到这一点?

1 个答案:

答案 0 :(得分:3)

您可以使用Python控制台轻松完成。关于如何使用它的更长或更短的提示我有几个答案 - 这是一个:https://superuser.com/questions/1067478/how-to-change-several-images-in-gimp-that-are-already-open/1067867?noredirect=1

在这种情况下,在拨打gimp.image_list()并在该列表中选择目标图片并将其分配到image变量后,只需拨打pdb.gimp_edit_stroke_vectors(...)的电话即可图像上的图层。

因此,您的整个filters->Python-fu->Console会话可能是:

image = gimp.image_list()[0]
for layer in image.layers:
    pdb.gimp_edit_stroke_vectors(layer, image.vectors[0])

(如果你的图像是最后打开的图像(那么它在image_list上的位置将为'0')并且你的路径是路径对话框中最顶层的一个(它也将'0'作为索引)。 您可以在for循环内使用pdb.gimp_context_set_foreground(或... set_brush和... set_dynamics,.. set_brush_size)的调用来更改相应的设置,因为您无需更改调用活跃的工具。使用Python控制台对话框底部的“浏览”按钮了解所有可能的调用。