我想创建一个Photoshop脚本,让我将组中的所有五个图层导出到png文件 - 与其他2组的每一层结合使用。
这有点模糊,所以我会试着说明我想要的东西 完成。有基组(红色,蓝色,黄色,橙色, 绿色)。然后是第二组包含第1,2和3层。 然后是第三组包含a,b,c和d。
我想 能够导出1_red_a.png,1_red_b.png,1_red_c.png,1_red_d.png, 1_blue_a.png,1_blue_b.png,...
我对Photoshop脚本没有多少经验。这是可以实现的吗?如果是这样,有人准备帮助我吗?
答案 0 :(得分:4)
我想我已经明白了你想要的东西。我发现ExtendScript在编写代码时非常尴尬,并且倾向于使用更强大的日常工具在Photoshop之外进行自动化操作。我会选择ImageMagick和bash
。 ImageMagick是免费的,可用于Windows,并且将两个图像组合在一起的基本命令是
convert image1.png image2.png -composite result.png
当然,您可以将PNG
足够的任何或全部更改为TIF
,JPG
或任何您喜欢的内容。
因此,对于您的问题,我已经制作了一个包含几个组的示例文件来显示这个概念,如下所示:
Photoshop文件是可用的here。
放大Layers
调色板(上图中的右侧),查看我制作的2个组。
然后转到File-> Scripts->将图层导出到文件,并选择如下选项:
这将为您导出以下文件:
layers_0000s_0002_Layer A.png
layers_0000s_0001_Layer B.png
layers_0000s_0000_Layer C.png
layers_0001s_0003_Layer 1 - Red.png
layers_0001s_0002_Layer 2 - Green.png
layers_0001s_0001_Layer 3 - Blue.png
layers_0001s_0000_Layer 4 - Magenta.png
请注意,格式为xxx<GROUP>s_xxx<LAYER>xxx.png
现在,您可以使用此bash
脚本轻松创建组的所有排列。我认为Windows BATCH文件非常相似 - 尽管我只是在胁迫下做Windows!
#!/bin/bash
i=0
# Iterate over Group 0 files
for a in *0s_*.png; do
j=0
# Iterate over Group 1 files
for b in *1s_*.png; do
convert "$a" "$b" -composite out_${i}_${j}.png
((j++))
done
((i++))
done
为您提供这些输出文件:
out_0_0.png
out_0_1.png
out_0_2.png
out_0_3.png
out_1_0.png
out_1_1.png
out_1_2.png
out_1_3.png
out_2_0.png
out_2_1.png
out_2_2.png
out_2_3.png
只是为了踢,我把它们放在蒙太奇中,你得到了这个:
请注意,如果您有3个组,则需要在脚本中使用第三个内部循环,并且将3个图像合成在一起的命令将更像这样(因为-composite
选项采用前两个图像):
convert image1.png image2.png -composite image3.png -composite result.png
或者,您可能会发现可以使用
convert -background none image1.png image2.png image3.png -flatten result.png
答案 1 :(得分:1)
Photoshop Composition Composer将创建顶级groups
中包含的任何内容的组合。 group
的名称和属于它的layer
名称将合并为您的文件名。
photoshopCompositionComposer
jsx
- 文件File > Scripts > Browse...
jsx
文件<强>层强>
Group
只动物。
Layer
dog _ Group
cat _ Group
背景。
Layer
sea _ Group
space _ Layer
underWater _
产生的成分