45 lines
1.3 KiB
JavaScript
45 lines
1.3 KiB
JavaScript
// 确保Photoshop中有打开的文档
|
|
if (app.documents.length == 0) {
|
|
$.writeln("没有打开的文档!");
|
|
} else {
|
|
// 获取当前激活的文档
|
|
var doc = app.activeDocument;
|
|
|
|
// 指定要遍历的图层组名称
|
|
var targetLayerSetName = "组 1"; // 请替换为您的图层组名称
|
|
|
|
// 查找并遍历指定的图层组
|
|
var targetLayerSet = findLayerSet(doc, targetLayerSetName);
|
|
if (targetLayerSet != null) {
|
|
traverseLayers(targetLayerSet, "");
|
|
} else {
|
|
$.writeln("未找到名为 '" + targetLayerSetName + "' 的图层组!");
|
|
}
|
|
}
|
|
|
|
// 函数:查找指定名称的图层组
|
|
function findLayerSet(doc, name) {
|
|
for (var i = 0; i < doc.layerSets.length; i++) {
|
|
if (doc.layerSets[i].name == name) {
|
|
return doc.layerSets[i];
|
|
}
|
|
}
|
|
return null;
|
|
}
|
|
|
|
// 函数:遍历图层
|
|
function traverseLayers(layerSet, indent) {
|
|
// 遍历图层组中的所有图层
|
|
for (var i = 0; i < layerSet.layers.length; i++) {
|
|
var layer = layerSet.layers[i];
|
|
|
|
// 在控制台打印图层名称及其在图层组中的位置
|
|
$.writeln(indent + layer.name);
|
|
|
|
// 如果是图层组,递归遍历该组内的图层
|
|
if (layer.typename == "LayerSet") {
|
|
traverseLayers(layer, indent + " ");
|
|
}
|
|
}
|
|
}
|