Answered
Group Selected Layers
Is it possible to group all selected layers individually? Each layer would remain within the respective group. All help will be treasured.
Is it possible to group all selected layers individually? Each layer would remain within the respective group. All help will be treasured.
but, but 🙂 can you make it to work for each layer when selected multiple layers?
Try this:
#target photoshop
function main() {
///// Process selected layers - from jazz-y /////
var s2t = stringIDToTypeID;
(r = new ActionReference()).putProperty(s2t('property'), p = s2t('targetLayersIDs'));
r.putEnumerated(s2t('document'), s2t('ordinal'), s2t('targetEnum'));
var lrs = executeActionGet(r).getList(p),
sel = new ActionReference();
for (var i = 0; i < lrs.count; i++) {
sel.putIdentifier(s2t('layer'), p = lrs.getReference(i).getIdentifier(s2t('layerID')));
(r = new ActionReference()).putIdentifier(s2t('layer'), p);
(d = new ActionDescriptor()).putReference(s2t("target"), r);
executeAction(s2t('select'), d, DialogModes.NO);
//////////
var layerName = activeDocument.activeLayer.name;
setFromLayer("[Merge]" + layerName);
setFromLayer("[Bone]" + layerName);
///// Functions /////
function setFromLayer(layNme) {
function s2t(s) {
return app.stringIDToTypeID(s);
}
var descriptor = new ActionDescriptor();
var descriptor2 = new ActionDescriptor();
var reference = new ActionReference();
var reference2 = new ActionReference();
reference.putClass(s2t("layerSection"));
descriptor.putReference(s2t("null"), reference);
reference2.putEnumerated(s2t("layer"), s2t("ordinal"), s2t("targetEnum"));
descriptor.putReference(s2t("from"), reference2);
descriptor2.putString(s2t("name"), layNme);
descriptor.putObject(s2t("using"), s2t("layerSection"), descriptor2);
executeAction(s2t("make"), descriptor, DialogModes.NO);
}
}
}
app.activeDocument.suspendHistory("Undo Script", "main()");Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.