编辑文本图层 - Photoshop 脚本

Posted

技术标签:

【中文标题】编辑文本图层 - Photoshop 脚本【英文标题】:Edit Text Layers - Photoshop Script 【发布时间】:2017-10-05 01:21:21 【问题描述】:

是否可以为 Photoshop 创建一个脚本,我们可以在其中向脚本提供数据/文本并更新某些具有特定名称的 text 图层。

例如:4 个 PSD 模板,其中一些文本层已按如下命名。

首先 第二 第三 第四 第五

在上面命名的相同文本层中,将使用五个不同的文本进行更新,并且需要通过所有 4 个 PSD 模板重复,并且像往常一样,将它们全部更新并且不会错过文本层,需要更新。

如果有人能帮我为此创建一个 Photoshop 脚本,那就太好了。

Screenshot请忽略文字...它不适合您或任何人...

【问题讨论】:

取决于您使用的 Photoshop 版本,但这可能有用:***.com/questions/14571008/… 【参考方案1】:

是的,这是可能的。您可以为编辑文本框创建 UI 面板。这是您需要的基础。

// dialogue
var dlg = new Window ("dialog", "Photoshop UI");
dlg.add ("statictext", undefined, "Do that thing");

var textContents = "No text";

// check to see if active layer is text
if (app.activeDocument.activeLayer.kind == "LayerKind.TEXT")

    var textItemRef = app.activeDocument.activeLayer.textItem;
    textContents = textItemRef.contents;



// add edit text
var edText = dlg.add ("edittext", [0,0,220,20]);
edText.text = textContents;
edText.alignment = "left";
edText.active = true;

//button group
var btnGroup = dlg.add ("group");
btnGroup.orientation = "row";
btnGroup.alignment = "center";
btnGroup.orientation = "column";

// add buttons
btnGroup.add ("button", undefined, "OK");
btnGroup.add ("button", undefined, "Cancel");
dlg.center();



var myReturn = dlg.show();


if (myReturn == 1)

  // set checkboxes and input here
  var ask = edText.text;
  // call the function to change text
  doThatThingThatYouDo(ask);



function doThatThingThatYouDo(str)

    // check to see if active layer is text
    if (app.activeDocument.activeLayer.kind == "LayerKind.TEXT")
    
        var textItemRef = app.activeDocument.activeLayer.textItem;
        textItemRef.contents = str;
    
  alert(str);

创建一个带有一些文本的新 PSD,您会看到它的实际效果。它将在文本层中读取并允许您更改它。希望您能了解它的工作原理并将其用于您自己的项目。

【讨论】:

谢谢先生,但我希望脚本弹出一个框来更新该特定文本层的文本,其余文本层相同,并且应该为所有打开的 PSD 模板打开在 Photoshop 中。如果可能的话,请在这里帮助我。 感谢您的更新,但它仅针对一个活动图层进行更改,我需要为每个如下命名的文本图层使用不同的独立文本。希望最好..第一,第二,第三,第四 截图供您参考。 - i.stack.imgur.com/BlZjF.png - 请忽略文字...它不适合您或任何人... Stack Overflow 不是脚本编写服务。我已经给了你回答你问题的基础。网上有很多资源可以帮助您快速掌握基于 javascript 的 Photoshop 脚本。

以上是关于编辑文本图层 - Photoshop 脚本的主要内容,如果未能解决你的问题,请参考以下文章

Photoshop 脚本:更改文本图层的文本

获取文本图层阴影参数(ExtendScript CS5、Photoshop 脚本)

Ae:文本图层操作基础

在短时间内显示文本图层

Photoshop 脚本 - 获取文档位深度

将图层名称复制到 Photoshop 中的文本框的脚本