Rog*_*rat 3 javascript photoshop
我正在尝试编写一个Photoshop脚本,它将显示给定名称的所有图层.我需要遍历所有可能的嵌套层集并使用以下代码:
function showBounds(layerNode)
{
for(var layer in layerNode.artLayers)
{
if (layer.name == "@bounds")
{
layer.visible = 1;
}
}
showBounds(layerNode.layerSets);
}
showBounds(app.activeDocument.doc.layerSets);
Run Code Online (Sandbox Code Playgroud)
但是当我运行它时,我收到以下错误:
Error 1302: No such element
Line: 5
-> for(var layer in layerNode.artLayers)
Run Code Online (Sandbox Code Playgroud)
artLayers应该是LayerSets的属性,所以我很困惑.
这也是我第一次尝试脚本PS(和使用javascript),所以可能有一些我没有得到的基本概念.
我觉得你需要更多的东西:
function showBounds(layerNode) {
for (var i=0; i<layerNode.length; i++) {
showBounds(layerNode[i].layerSets);
for(var layerIndex=0; layerIndex < layerNode[i].artLayers.length; layerIndex++) {
var layer=layerNode[i].artLayers[layerIndex];
if (layer.name == "@bounds") {
layer.visible = 1;
}
}
}
}
showBounds(app.activeDocument.layerSets);
Run Code Online (Sandbox Code Playgroud)
另外,语法中的javascripts不能像你想象的那样工作.它不像foreach循环.它遍历对象的属性名称.
| 归档时间: |
|
| 查看次数: |
9462 次 |
| 最近记录: |