ImgMark v0.7.3
更新内容
新增
- BMP 支持:内置 BMP 编解码器(sharp 预编译版不含 BMP 加载器,此前 BMP 虽在支持列表中但必然失败)。支持 1/4/8 位调色板、16/24/32 位、位域与透明通道;
format=auto时写回 BMP,也可作为水印源 - 「JPEG 体积优先」开关(
options.mozjpeg/ CLI--mozjpeg):使用 mozjpeg 编码,体积小约 10–15%,但慢约 5 倍 - 本地数据库在启动时及每天自动清理失效记录(输入已改动/删除、输出已删除)
变更
- 处理提速:24MP JPEG 单点水印 886ms → 170ms(约 5 倍),平铺 2.9s → 1.4s
- JPEG 默认改用 libjpeg-turbo 编码(输出体积比 mozjpeg 大约 10–15%,需要更小体积可打开上述开关)
- PNG 输出压缩级别 9 → 6(照片类内容上快约 2 倍且体积不更大)
- 单点水印直接叠加,不再生成与原图等大的透明中间图;平铺叠加层改用 raw 像素
- 同批 / 同一监听内输出重名时自动追加序号:
a.jpg、a.png强制输出 JPEG 时得到a_wm.jpg与a(2)_wm.jpg,不再互相覆盖 - 上传的待处理图片改为落盘暂存(此前最多 500×100MB 全部驻留内存);任务结束 6 小时后回收,启动时清理残留临时文件
- multer 升级到 2.4.0
修复
- 文件夹监听开启「含子目录」时,子目录从未被扫描
- 监听的文件事件、周期扫描、写入重试三路并发处理同一文件,导致重复写入、统计翻倍;删除监听后排队中的任务仍会继续写文件
- 创建监听时只保存了
autoColor/sizeBase,输出格式、质量等选项丢失 - 监听把「别的源文件生成的同名输出」误判为已处理,该图片永远不会加水印
/api/process返回任务号后若发生错误,重复写响应可能导致服务进程退出- 上传的中文文件名乱码;同名上传文件互相覆盖
- AVIF 输入在
format=auto时被输出为 PNG;.tif/.jpeg的「跳过已处理」预判与实际输出扩展名不一致 - 水印超出图片尺寸(大尺寸百分比、旋转、竖图 + 长边基准)时合成报错
- 本地目录浏览的子目录排序无效
- fnOS 生命周期脚本
cmd/main切换到了不存在的工作目录
安全
- 桌面版内嵌服务只监听
127.0.0.1(此前绑定0.0.0.0,局域网内任何人都能浏览、改写本机文件) - fnOS 模式优先采用网关注入的用户身份头,不再信任客户端自填的 uid;目录路径先规范化,防止用
..绕过授权校验 - 本地数据库与监听配置改为原子写入,进程退出及收到 SIGTERM/SIGINT 时先刷盘
下载
| 平台 | 文件 | 说明 |
|---|---|---|
| Windows | ImgMark-Setup-0.7.3.exe | 安装版(推荐) |
| Windows | ImgMark-Portable-0.7.3.exe | 便携版,免安装,双击运行 |
| macOS(Apple Silicon) | ImgMark-mac-arm64-0.7.3.dmg | M1 及以后的芯片 |
| 飞牛 fnOS | imgmark-0.7.3-window.fpk | 推荐:桌面窗口入口,全功能 |
| 飞牛 fnOS | imgmark-0.7.3-fullscreen.fpk | 全屏 / 新标签页入口,全功能 |
| 飞牛 fnOS | imgmark-0.7.3-compat.fpk | 兼容旧版应用中心(安装报「设置目录权限失败」时用),无飞牛授权目录功能 |
安装说明
- Windows:安装版一路下一步即可;便携版无需安装。首次运行若出现 SmartScreen 提示,点「更多信息 → 仍要运行」。
- macOS:安装包未做代码签名,首次打开请在「应用程序」里右键 → 打开,或在终端执行
xattr -cr /Applications/ImgMark.app。 - 飞牛 fnOS:fpk 按需选一个,放到应用中心扫描目录(如
/vol1/1000/fnOS App/fpk/imgmark/)后在应用中心「手动安装」。要求 fnOS ≥ 1.2.0401、应用中心 ≥ 1.34.0(window / fullscreen 变体),依赖应用 nodejs_v24。
完整说明见 README。
完整变更:v0.7.2...v0.7.3