我试图将一个LayerSet移动到PhotoShop脚本中的另一个LayerSet中。这是我的代码:
// Source
var srcGroup = app.activeDocument.layerSets.add();
srcGroup.name = 'source';
// Target
var targetGroup = app.activeDocument.layerSets.add();
targetGroup.name = 'target';
srcGroup.move(targetGroup, ElementPlacement.INSIDE);
这会出现错误"错误1220:非法争论"。如果我将第二个参数更改为ElementPlacement.PLACEAFTER
,那么错误就会消失,但它并没有完全符合我的要求。
答案 0 :(得分:2)
正如您所发现的,ElementPlacement
的所有值都不适用于所有对象类型。我决定通过添加dummieGroup来创建一个workarround,并将源放在虚拟之前。最后,假人将被移除。
var srcGroup = app.activeDocument.layerSets.add();
srcGroup.name = "source";
var targetGroup = app.activeDocument.layerSets.add();
targetGroup.name = "target";
//adding the dummy INSIDE the target LayerSet
var dummieGroup = targetGroup.layerSets.add();
dummieGroup.name = "dummy";
srcGroup.move(dummieGroup, ElementPlacement.PLACEBEFORE);
dummieGroup.remove();
要删除layerSet
,必须为空。