可替换地,如何通过层名称改变TextItem的内容。

请注意:我使用的Photoshop CS4(11.0.1)

有帮助吗?

解决方案

我只写我的第一的Photoshop JSX脚本这个场合:)

我使用的Photoshop CS3,但我猜更改文本是一个核心功能,可能不是那么容易改变从一个版本到另一个版本;

下面是我的片断:

//get the active document
var doc = app.activeDocument;
//get the active layer
var al = doc.activeLayer;
if(al.kind == LayerKind.TEXT) {
    //get the textItem
    var ti = al.textItem;
    //change contents
    ti.contents = "stackoverflow";
}

我不知道如果我得到你通过改变图层名称的内容意味着什么, 但这里是我的旅途吧:

function changeTextByLayerName(layerName,newText){
    var layer = doc.layers.getByName(layerName);
    if(layer.kind == LayerKind.TEXT) layer.textItem.contents = newText;
}

幸运的是一个getByName方法有必须的,从而不手动循环,然后我只是检查该层实际上是一个文本层。

希望它能帮助。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top