Photoshop,用于查找图层名称中包含单词的图层的脚本
Photoshop, script to find a layer that contains a word in its layer's name
希望大家能帮帮我。
我需要一个可以找到图层名称的脚本,例如,如果我有这个图层:
Wood 123 Canvas
Wood 456 Specular
Wood 789 Lights
我想找到包含 Canvas 的图层。也许,如果可能的话,将图层的名称颜色更改为绿色。
我也发现了我试过的这段代码:
try {
(ref1 = new ActionReference()).putName(stringIDToTypeID('layer'),"Canvas"); // replace Canvas with your layer name
(desc1 = new ActionDescriptor()).putReference(stringIDToTypeID('null'), ref1)
executeAction(stringIDToTypeID('select'), desc1, DialogModes.NO);
} catch (e) {
alert("Sorry, this layername does not exists");
}
这很好用,但前提是层的名称恰好是“Canvas”。这就是问题所在
你可以看看Adobe Javascript Scripting Reference。
看来没有比手动搜索正确图层更快的方法了:
var layers = app.activeDocument.artLayers
for (var i = 0; i < layers.length; i++) {
if (/Canvas/.test(layers[i].name)) {
// layers[i] name contains "Canvas"
}
}
希望大家能帮帮我。 我需要一个可以找到图层名称的脚本,例如,如果我有这个图层:
Wood 123 Canvas
Wood 456 Specular
Wood 789 Lights
我想找到包含 Canvas 的图层。也许,如果可能的话,将图层的名称颜色更改为绿色。
我也发现了我试过的这段代码:
try {
(ref1 = new ActionReference()).putName(stringIDToTypeID('layer'),"Canvas"); // replace Canvas with your layer name
(desc1 = new ActionDescriptor()).putReference(stringIDToTypeID('null'), ref1)
executeAction(stringIDToTypeID('select'), desc1, DialogModes.NO);
} catch (e) {
alert("Sorry, this layername does not exists");
}
这很好用,但前提是层的名称恰好是“Canvas”。这就是问题所在
你可以看看Adobe Javascript Scripting Reference。
看来没有比手动搜索正确图层更快的方法了:
var layers = app.activeDocument.artLayers
for (var i = 0; i < layers.length; i++) {
if (/Canvas/.test(layers[i].name)) {
// layers[i] name contains "Canvas"
}
}