问题
Is there any way or script to copy layer to all artboards in Photoshop?
Thank you in advance, because I could not find a solution
回答1:
Artboards are just specialized layer groups, which can be targeted with the document.layerSets property. In this working example (tested and working in Adobe PS CC 2019), I make the assumption that there is 1 layer we are copying and each artboard has 1 layer already in it. For a visual demo, check out this screencast gif: https://www.rebel-ist.com/img/example/duplicateArtboards.gif
var doc = app.activeDocument;
// assumes your bottom most artboard in the layer tree contains the layer you want to copy from AKA Artboard 1
var artBoardToCopyFrom = doc.layerSets[doc.layerSets.length - 1];
// assumes there is only 1 layer in this artboard that we need to target
var layerToCopy = artBoardToCopyFrom.layers[0];
// set that layer as the active layer
doc.activeLayer = layerToCopy;
// select all
doc.selection.selectAll();
// copy the selection
doc.selection.copy();
// loop through each layerSet aka artboard except the last one -- no need to paste an additional copy into the bottom most layerSet
for (var g = 0; g < doc.layerSets.length - 1; g++) {
// set layer 0 in this group as the active layer -- again assumes there is only one layer in each artboard
doc.activeLayer = doc.layerSets[g].artLayers[0];
// select all
doc.selection.selectAll();
// paste into selection aka create new layer and paste with mask
doc.paste(true);
}
来源:https://stackoverflow.com/questions/57050942/duplicate-layers-in-multiple-artboards-photoshop-2019