﻿// 确保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 + "    ");
        }
    }
}
