【问题标题】:将顶部文本图层更改为文件名的 Photoshop 动作脚本
【发布时间】:2021-07-22 11:39:26
【问题描述】:

我有 1000 个 psd 文件可以将顶层更改为文件名。请帮我为此编写一个脚本。

我想要一个 JS 脚本,它将顶层的文本更改为文件名。

例如:文件名为“20.psd”, 该脚本应将顶层更改为 20,

之后,它应该将文件保存为具有相同文件名的 png。

【问题讨论】:

  • 您要求使用 JavaScript,但标题表明您需要 ActionScript。

标签: javascript actionscript adobe photoshop photoshop-script


【解决方案1】:

打开您的示例文档 20.psd,将重命名最顶层 20.psd 你会想要删除扩展。有多种方法可以做到这一点。 喜欢this

JavaScript(Photoshop 使用扩展名 .jsx)非常简单。

// call the source document
var srcDoc = app.activeDocument;

// Get the name of the psd document
var docName = app.activeDocument.name;

// Deal with the extension
// Trim of the last four characters
// ie ".psd"
docName = docName.slice(0, -4);


// Rename layer the topmost text layer
srcDoc.layers[0].textItem.contents = docName;

如果最顶层是一个组,它会重命名它。但我相信你可以解决这个问题。

【讨论】:

  • 感谢您的帮助,但我需要更改文本,而不是文本图层名称,我尝试了您的脚本,但它将顶部文本图层名称更改为文件名,但我需要更改文本作为文件名。 i.imgur.com/HYfjtQU.png
  • 我替换了 srcDoc.layers[0].name = docName;与 srcDoc.layers[0].textItem.contents = docName;它现在正在更改文本,但我被扩展删除卡住了。
  • 很抱歉混淆了文本和图层名称。如果您知道您的只是使用 Photoshop 文件 (.psd),那么这很容易。您只需修剪最后四个字符的字符串。 - 如果使用 .tiff 或 .py 则不太好但在这种情况下没关系 :) 我已经调整了代码。
  • 非常感谢您花时间和精力帮助我,兄弟,您的脚本运行良好。有没有办法将此脚本应用于所有打开的文档?
  • 最好的方法是记录一个动作。所以打开一个文件。在动作面板上,使用 New Action... 记录一个新动作,给它起一个类似于“我的文件重命名器”的名称。按记录。 (灯应该是红色的)从 File 菜单中选择 Scripts 然后 Browse... (选择您的脚本) - 然后脚本将运行.停止录制并将其添加到键盘快捷键中,您就可以开始了。
【解决方案2】:
    var origDoc = app.activeDocument;

// duplicate the Document with new name
origDoc.duplicate((origDoc.layers[0].textItem.contents), false); 

// close previous one
origDoc.close(SaveOptions.DONOTSAVECHANGES); 
// (SaveOptions.SAVECHANGES);

【讨论】:

    猜你喜欢
    • 2013-01-12
    • 2018-11-07
    • 1970-01-01
    • 2017-10-05
    • 2015-08-18
    • 2020-06-03
    • 2020-12-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多