PC TOOLS

EP08. “自动化:Actions、Scripts 与 Variables”

首页 PC 工具 Graphic Design · Photopea · EP08
约 9 分钟· #EP08#Photopea
🔒 登录后可标记已读

这篇笔记讲 Photopea 三种自动化工作的方式——录制重复步骤的 Actions(动作)、写程序代码的 Scripts(脚本)、以及用表格批量生成多版本图片的 Variables(变量)。 前置知识:先看过 EP01-EP07,熟悉图层和基本编辑操作。

重点内容


自动化总览:三种方式

  • Actions(动作):把你的操作步骤录制成一连串步骤,之后能重复套用
  • Scripts(脚本):写一段程序代码(脚本),能对文件做批量处理
  • Variables(变量):定义好几个变量,再提供一份带不同数值的表格给 Photopea,批量生成同一份设计的多个不同版本

三种方式各自适合不同的自动化场景——重复固定步骤用 Actions、需要复杂逻辑处理用 Scripts、批量生成个人化版本用 Variables。


Actions(动作)

运作方式类似其他软件里的"宏(Macro)"。

Actions 面板Window → Actions)用阶层式结构组织:

  • Action Sets(动作组):像文件夹一样,把相关的自动化流程归在一起
  • Actions(动作):动作组里的个别自动化流程
  • Steps(步骤):组成一个动作的具体命令

录制与播放:

  1. Record(录制)按钮开始记录操作步骤
  2. 再点一次停止录制
  3. 录好之后,点 Apply(套用)按钮,就能在当前文件上执行这份录好的动作

文件兼容性:Photopea 支持 ATN 文件(Adobe Photoshop 的标准动作文件格式)——能读取和保存 ATN 格式,也就是说 Photoshop 里录制好的动作能汇入 Photopea 使用,反过来也行(用 File → Open 载入既有 ATN 文件,或用 Export 按钮把当前动作组导出成 ATN),实现跨平台的自动化兼容。

[截图:Actions 面板的阶层式结构,显示 Action Sets/Actions/Steps 三层,以及 Record/Apply 按钮]


Scripts(脚本)

JavaScript 写脚本来自动化处理,能做到批量复制排列图层、旋转特定命名的元素这类操作。

访问方式File → Script,打开 Script 窗口——里面有范例脚本可以参考,有 Run(执行)按钮跑脚本,也有 Save(保存)功能把脚本存在本地供之后使用。

[截图:Script 窗口,显示范例脚本代码和 Run/Save 按钮位置]

文件模型:Photopea 采用跟 Adobe Photoshop 脚本模型类似的接口。全局的 app 对象能访问整个应用程序,app.activeDocument 代表当前正在编辑的文件。

  • 文件对象带有 width、height、layers 这类属性,也有 resizeImage() 这类方法
  • 图层同样有 name、visibility、opacity 这类属性,以及 rotate() 这类方法
  • ⚠️ 很多属性是只读的(read-only),不能直接重新赋值改写

Photopea 专属的扩充功能(超出标准 Photoshop 兼容范围):

  • App.open():从网址加载图片
  • App.echoToOE():把字符串传送到外部环境
  • Document.saveToOE():导出成 PNG、JPG、WEBP、PSD、或 SVG 格式
  • App.UI:控制缩放、滚动、全屏模式

💡 详细的语法和属性信息,可以参考 Adobe 官方的 JavaScript 参考文档(因为 Photopea 的脚本模型跟 Photoshop 高度兼容)。


Variables(变量):数据驱动生成图片

这个功能让你透过把图层链接到表格数据,实现数据驱动批量生成图片。

能透过变量修改的三种图层属性:

  • 可见性(Visibility):控制图层显示与否
  • 文字内容(Text content):用表格里的数值填充文字图层
  • 像素内容(Pixel content):用图片文件替换图层的像素内容

📌 核心概念:一个变量,就是"某个图层"跟"表格里某一栏"之间的链接关系。

实际应用场景:不用一个个手动改每份要导出的内容——先准备好一份带变量链接图层的模板文件,再提供一份 CSV 表格,里面放好各种要替换的数值/数据。一次导出就能自动生成多张图片——表格里每一行数据对应生成一张图片。

操作步骤: Image → Variables,包含三个区块:

  1. Variables:把变量名称指定给选中的图层
  2. Data Sets:汇入 CSV 表格和来源图片文件
  3. Export as:生成一份包含全部处理好的图片的 ZIP 压缩包

[截图:Image → Variables 窗口,显示 Variables/Data Sets/Export as 三个区块]

📌 变量和数据集的设置会保存在 PSD 文件本身里,不过来源图片需要在每次要导出前重新载入一次

常见错误

  • ❌ 需要批量生成几十份"内容不同、设计相同"的图片(比如带不同姓名的证书),一个个手动改——用 Variables 功能,做好一次模板+CSV 表格,一次导出就能自动生成全部版本
  • ❌ 以为 Photoshop 里录好的动作在 Photopea 完全用不了——ATN 格式是通用的,Photoshop 录制的动作能直接汇入 Photopea 使用
  • ❌ 写脚本时想直接改写某些图层/文件属性却报错——很多属性是只读的,不能直接赋值改写,要透过对应的方法(method)来操作
  • ❌ 用 Variables 导出前忘记重新载入来源图片——变量和数据集设置虽然存在 PSD 文件里,但来源图片本身需要在每次导出前重新载入
  • 💡 不确定该用哪种自动化方式:固定重复的操作步骤(比如批量给图片加同样的浮水印)用 Actions 录制最简单;需要判断逻辑或复杂处理用 Scripts;批量生成"同设计不同内容"的多个版本用 Variables

Sources

官方文档:

  1. Photopea Learn: Automate — https://www.photopea.com/learn/automate
  2. Photopea Learn: Actions — https://www.photopea.com/learn/actions
  3. Photopea Learn: Scripts — https://www.photopea.com/learn/scripts
  4. Photopea Learn: Variables — https://www.photopea.com/learn/variables