photoshop可通过“动作+批处理”自动为大量照片添加统一文字或图片水印。先创建录制水印操作的动作,再用批处理应用到指定文件夹,支持自定义命名与子目录;进阶可使用jsx脚本实现动态水印变量注入。

如果您需要为大量照片快速添加统一水印,Photoshop 中的“动作”与“批处理”功能可实现自动化操作。以下是完成此任务的具体步骤:
一、创建水印动作
该步骤用于录制一套标准化操作流程,将文字或图片水印的添加过程保存为可重复调用的动作。后续所有照片都将按此流程自动执行。
1、打开 Photoshop,新建一个空白文档(尺寸略大于目标照片,如 2000×1500 像素),确保背景为透明或白色。
2、使用 文字工具(T) 在画布中央输入水印内容(如“© 摄影师姓名”),设置字体、大小、颜色及图层混合模式(建议设为“叠加”并降低不透明度至 30%–50%)。
3、点击菜单栏 窗口 → 动作,在“动作”面板中点击右下角“新建动作”图标,命名为“添加文字水印”,点击“记录”。
4、执行以下操作:选中文字图层 → 编辑 → 自由变换(Ctrl+T) → 拖动缩放并旋转至合适角度(如 -15°)→ 按 Enter 确认 → 右键文字图层 → “栅格化图层” → 按 Ctrl+Shift+Alt+E 盖印可见图层 → 隐藏原文字图层 → 点击动作面板底部“停止”按钮。
二、准备水印图层模板(可选图片水印)
若需使用 PNG 格式透明 logo 作为水印,须预先将其转为智能对象并适配任意尺寸照片,避免重复调整。
1、将水印 PNG 文件拖入上述空白文档中,置于文字水印图层下方。
2、右键该图层 → “转换为智能对象” → 按 Ctrl+T 调整大小与位置(建议宽度设为画布宽的 20%~30%,居中偏下放置)→ 回车确认。
3、再次打开“动作”面板,新建动作“添加图片水印”,点击“记录”,重复执行:显示/隐藏对应图层 → 盖印可见图层 → 停止录制。
三、设置批处理参数
批处理功能将指定动作应用到整个文件夹中的所有图像,无需逐张打开,大幅提升效率。
1、确保目标照片已统一存放于一个独立文件夹中(如“待加水印原图”),且格式为 JPG 或 TIFF(PSD 需注意图层兼容性)。
2、点击菜单栏 文件 → 自动 → 批处理。
3、在弹出窗口中,“播放”选项组内选择: 动作:添加文字水印(或添加图片水印); 源:文件夹 → 选择“待加水印原图”文件夹; 目标:文件夹 → 选择新文件夹“已加水印输出”; 勾选“覆盖动作中的‘存储为’命令”和“包含所有子文件夹”(如需处理子目录)。
4、在“文件命名”区域,勾选“存储并关闭”,可自定义输出名格式(如添加“_watermarked”后缀)。
四、运行批处理并验证结果
启动后 Photoshop 将后台依次打开每张照片、执行动作、保存并关闭,全程无需人工干预。
1、点击“确定”开始批处理,状态栏将显示当前处理序号与总数量(如“正在处理第 17 张,共 236 张”)。
2、处理期间请勿操作 Photoshop 主界面,避免中断进程;若某张图因格式异常中断,系统会在日志中提示错误路径。
3、完成后进入“已加水印输出”文件夹,随机打开 3–5 张图片,检查水印位置、透明度、旋转角度是否一致,确认图层是否已合并(批处理默认输出为扁平化 JPG)。
五、使用 JavaScript 脚本增强批量控制(进阶)
当标准动作无法满足动态水印需求(如按文件名嵌入编号、日期或作者信息),可借助 Photoshop 内置的 JSX 脚本实现变量注入。
1、用记事本新建文本文件,粘贴如下核心代码段(以插入文件名前缀为例):
var doc = app.activeDocument; var fileName = doc.name.replace(/\.[^\.]+$/, ''); doc.artLayers.add().name = "AutoWatermark"; doc.activeLayer = doc.artLayers.getByName("AutoWatermark"); var textLayer = doc.artLayers.add(); textLayer.kind = LayerKind.TEXT; textLayer.textItem.contents = fileName + " ©2024";
2、保存为 UTF-8 编码的 .jsx 文件(如 “BatchNameStamp.jsx”),放入 Photoshop 安装目录下的 Presets/Scripts/ 文件夹。
3、重启 Photoshop,在菜单栏 文件 → 脚本 中即可调用该脚本,配合“批处理”中的“脚本”选项执行。











