2016-07-25 93 views
1

我知道图层名称只能作为对象访问。但有没有办法使用该对象名称来查找数组中的索引位置?换句话说,我在文件中有多个图层。我想找到一个特定的图层,锁定并更改其上方所有图层的可见性,并解锁并更改其下所有图层的可见性。我会一直在寻找同一层,但总的图层数会随着工作而改变。任何帮助将非常感激!按名称查找图层索引#

回答

0

只需循环遍历所有图层,并检查每个图层是否与您的名称相匹配。如果它确实保存了索引(当前循环数)。

// get index (from top layer down) of named layer... expects only one layer with this name 
// name of layer you are looking for 
var targetLayerName = 'name' 

var targetDocument = app.activeDocument; 
var layerCount = targetDocument.layers.length; 
var namedLayerIndex = 0; 
// loop through layers and find the named layer 
for (i = 0; i < layerCount; i++) { 
    if (targetDocument.layers[i].name == targetLayerName) { 
     namedLayerIndex = i; 
    } 
}