在darktable中可通过样式机制批量修图:一、暗房视图保存样式;二、光桌视图多选应用;三、darktable-cli命令行处理大批量;四、lua脚本按相机型号自动匹配应用。

如果您在darktable中已完成一张照片的精细调整,希望将相同参数快速应用到其他多张照片上,则可利用样式(style)机制实现高效批量修图。以下是具体操作步骤:
一、在暗房视图中创建并保存样式
样式是darktable中封装一组编辑参数的可复用模板,其本质为.xml格式文件,存储于data/styles/目录下,支持跨会话调用与批量应用。
1、确保当前处于“暗房(Darkroom)”视图,且已对目标照片完成全部所需调整(如曝光、白平衡、Filmic RGB、去雾等模块设置)。
2、点击右侧面板中的“样式”选项卡(若未显示,请确认偏好设置中“模块可见性”已启用该模块)。
3、点击“保存新样式”按钮,在弹出窗口中输入唯一名称(建议含场景与特征,如“风光-高对比-冷调”),勾选需包含的模块(默认全选),点击“保存”。
二、在光桌视图中批量应用样式
光桌视图(Lighttable)是执行批量操作的核心界面,支持多选照片后统一应用样式,无需逐张切换至暗房模式。
1、点击顶部菜单栏“视图” → “光桌视图”(或按快捷键L),进入缩略图浏览界面。
2、使用以下任一方式选择多张照片:
— 按住Ctrl键(Windows/Linux)或Cmd键(macOS)逐张点击缩略图;
— 按住Shift键选择连续范围;
— 用鼠标拖拽框选区域。
3、确认选中后,在右侧面板“样式”区域中找到刚保存的样式名称,双击该样式条目,或点击右侧“应用”按钮。
4、系统将在后台为每张选中照片生成对应的历史记录,所有参数将被精确复制,无损保留原始RAW数据。
三、使用darktable-cli命令行批量应用样式
对于大批量照片(如百张以上)或需集成进自动化流程的场景,darktable-cli提供免GUI的批处理能力,直接通过终端调用样式文件,绕过图形界面开销。
1、打开终端(Linux/macOS)或命令提示符(Windows),确认darktable-cli已正确安装并可执行:
darktable-cli --version(应返回版本号及Lua支持状态)。
2、执行样式批量应用命令:
darktable-cli /path/to/input/*.ARW --style "风光-高对比-冷调" --out /path/to/output/ --hq true。
3、其中:
— /path/to/input/*.ARW为源文件通配路径(支持CR2、NEF、DNG等多种RAW格式);
— --style后接样式名称(不含.dtstyle扩展名);
— --out指定输出目录,自动创建同名JPEG/TIFF文件;
— --hq true启用高质量渲染路径,确保Filmic RGB等模块完整计算。
四、通过Lua脚本自动匹配并应用相机专属样式
当照片来自不同机型且需差异化处理时(如Canon EOS R6需锐化增强,Sony A7IV需色彩科学适配),可借助内置Lua API实现智能分发样式,避免人工筛选。
1、启动darktable后,进入“首选项” → “Lua” → “启用Lua支持”(首次启用需重启)。
2、将以下脚本保存为auto_apply_camera_style.lua,并置于~/.config/darktable/lua/目录(Linux/macOS)或%APPDATA%\darktable\lua\(Windows):
local dt = require "darktable"
dt.register_event("post-import-image", function(image)
local model = image.exif.model
if model and dt.styles["darktable_"..model] then
dt.styles["darktable_"..model]:apply_to_image(image)
end
end)
3、重启darktable,后续导入的新照片将根据EXIF中的相机型号,自动查找并应用data/styles/目录下对应命名的预置样式(如darktable_Sony_A7IV.dtstyle)。











