You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Photoshop动作或脚本批量生成带1-48编号的按钮图片?

如何用Photoshop批量生成带数字的按钮图片(1-48)

你这个批量生成带递增数字按钮的需求,用Photoshop JavaScript脚本比Action要合适得多——Action本质是录制固定操作,没法自动帮你把文本从1递增到48,而脚本可以轻松实现循环更新文本+批量保存的自动化流程。

下面是具体的实现步骤:

一、前期准备

确保你的PS文件满足两个条件:

  • 有一个命名为"TEXT"的文本图层(名字一定要准确,脚本会根据这个名字找图层),并且已经调好字体、大小、位置等样式;
  • 有"White Button image"图层,位置已经摆放妥当。

二、编写并运行脚本

  1. 打开文本编辑器(比如记事本、VS Code),复制下面的代码:
// 定义数字范围(从1到48)
var startNum = 1;
var endNum = 48;

// 获取当前打开的PS文档
var doc = app.activeDocument;

// 查找名为"TEXT"的文本图层
var textLayer = null;
for (var i = 0; i < doc.layers.length; i++) {
    if (doc.layers[i].name === "TEXT" && doc.layers[i].kind === LayerKind.TEXT) {
        textLayer = doc.layers[i];
        break;
    }
}

// 检查是否找到目标图层,没找到就弹窗提示
if (textLayer === null) {
    alert("找不到名为'TEXT'的文本图层,请检查图层名称!");
    throw new Error("Missing TEXT layer");
}

// 循环生成每张图片
for (var num = startNum; num <= endNum; num++) {
    // 更新文本图层的内容为当前数字
    textLayer.textItem.contents = num.toString();
    
    // 设置保存路径(把这里改成你想要保存的文件夹路径,比如"~/Desktop/Buttons/w" + num + ".png")
    var savePath = new File("~/Desktop/ButtonImages/w" + num + ".png");
    
    // PNG导出设置(非交错格式,适合网页或常规使用)
    var pngOptions = new PNGSaveOptions();
    pngOptions.interlaced = false;
    
    // 保存当前文档为PNG
    doc.saveAs(savePath, pngOptions, true, Extension.LOWERCASE);
}

// 完成后弹窗提示
alert("批量生成完成!一共生成了" + (endNum - startNum + 1) + "张图片");
  1. 把代码里的savePath改成你自己的保存路径(比如你想存在桌面的ButtonImages文件夹里,记得先创建好这个文件夹)。
  2. 保存文件,后缀名设为.js(比如BatchButtonGenerator.js)。
  3. 打开你的PS文件,然后点击顶部菜单:文件 > 脚本 > 浏览,选择刚才保存的.js文件,点击运行即可。

三、为什么不推荐用Action?

Action只能录制你手动操作的固定步骤,比如你录制“修改文本为1→保存为w1.png”,但没法自动把文本改成2、3……每次都要手动修改文本再重新录制,完全达不到自动化的目的,效率极低。而脚本可以一次性完成所有循环操作,全程不用手动干预。

内容的提问来源于stack exchange,提问作者Seth Haberman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:18:41