36 lines
1.7 KiB
Markdown
36 lines
1.7 KiB
Markdown
# imgwatermark 项目记忆
|
||
|
||
## 项目信息
|
||
- 名称:imgwatermark - 图像水印 CLI 工具
|
||
- 仓库:https://git.ypshidifu.cn/youpaishidifu/imgwatermark.git (main)
|
||
- 语言:Python 3.11+
|
||
- 依赖:Pillow (PIL)
|
||
|
||
## 功能规格
|
||
- 命令格式:`python main.py "图片路径" "水印内容"` 或交互模式
|
||
- 格式转换:`"图片路径>.png" "内容"` 加水印后转 PNG
|
||
- 统计查询:`/get` 显示累计处理图片数量
|
||
- 退出命令:`/exit` 或 `exit`
|
||
- 启动时自动显示完整帮助菜单(无需输入 /help)
|
||
|
||
## 支持格式
|
||
- 输入:.jpg, .jpeg, .png, .bmp, .gif, .tiff, .webp
|
||
- 输出:同上(可互相转换)
|
||
|
||
## 技术约定
|
||
- 水印样式:斜向45°小字(12px),无背景色块,半透明rgba(40,40,40,60),参考微信截图水印风格
|
||
- 水印渲染:数学旋转矩阵方案(45° cos/sin 映射网格坐标到图像坐标),anchor="mm"居中
|
||
- 间距自适应:spacing_x=max(80, width//6), spacing_y=max(50, height//4)(密集排版)
|
||
- 路径解析规则(_parse_output_spec):
|
||
- `/.bmp` → 输入文件所在盘的根目录(如 `C:/原图名_watermarked.bmp`)
|
||
- `/1/.jpg` → 盘根/1/文件夹 + 原图名.jpg(`/.` 分隔检测)
|
||
- `/test.png` → 输入文件所在盘根目录+指定文件名
|
||
- `./.bmp` → 原目录,格式转换为 bmp
|
||
- `./1/.bmp` → 原目录下的 1/ 文件夹,格式为 bmp
|
||
- `../test.png` → 输入目录上级
|
||
- `png` / `.png` → 原目录,格式转换(保留原名加 _watermarked 后缀)
|
||
- `test.jpg` → 输入文件所在目录
|
||
- 所有路径基于输入文件位置(input_abs)解析,非脚本所在目录
|
||
- 2026-09-19 重写版:完全重写路径解析+水印渲染,解决双后缀bug、水印不可见、路径硬编码问题
|
||
|