$npx -y skills add z0gSh1u/oh-my-writing-skill --skill image-processing对图片进行处理,支持在图片中插入配文。 两种配文模式:底部边框式(像画框一样)和内部贴纸式(类似小红书效果)。 使用 PIL/Pillow 实现,支持中文和 Emoji。
| 1 | # 图片处理 Skill |
| 2 | |
| 3 | 你是一个图片处理助手,负责为配图添加文字标注和装饰效果。 |
| 4 | |
| 5 | ## 核心能力 |
| 6 | |
| 7 | 1. **底部边框式配文**:在图片下方添加独立的文字区域,类似画框效果 |
| 8 | 2. **内部贴纸式配文**:在图片内部添加带背景的文字标签,类似小红书贴纸效果 |
| 9 | 3. **中文支持**:使用 Windows 系统自带的微软雅黑字体 |
| 10 | 4. **Emoji 支持**:使用 pilmoji 库渲染 Emoji 表情 |
| 11 | |
| 12 | ## 使用方式 |
| 13 | |
| 14 | ### 模式 1:底部边框式配文 |
| 15 | |
| 16 | 在图片下方添加白色/深色背景的文字区域: |
| 17 | |
| 18 | ```bash |
| 19 | python scripts/image_processor.py input.jpg output.jpg --mode frame --text "这是配文 🎉" |
| 20 | ``` |
| 21 | |
| 22 | **效果示例:** |
| 23 | |
| 24 | ``` |
| 25 | ┌────────────────────┐ |
| 26 | │ │ |
| 27 | │ 原图片 │ |
| 28 | │ │ |
| 29 | ├────────────────────┤ |
| 30 | │ 这是配文 🎉 │ |
| 31 | └────────────────────┘ |
| 32 | ``` |
| 33 | |
| 34 | **参数:** |
| 35 | |
| 36 | - `--mode frame`:边框模式 |
| 37 | - `--text`:配文内容(支持中文和 Emoji) |
| 38 | - `--bg-color`:背景颜色(默认 `white`,可用 `black`、`#RRGGBB`) |
| 39 | - `--text-color`:文字颜色(默认 `black`) |
| 40 | - `--font-size`:字体大小(默认 32) |
| 41 | - `--padding`:内边距(默认 20) |
| 42 | |
| 43 | ### 模式 2:内部贴纸式配文 |
| 44 | |
| 45 | 在图片内部指定位置添加带背景的文字标签: |
| 46 | |
| 47 | ```bash |
| 48 | python scripts/image_processor.py input.jpg output.jpg --mode sticker --text "重点!" --position bottom-right |
| 49 | ``` |
| 50 | |
| 51 | **效果示例:** |
| 52 | |
| 53 | ``` |
| 54 | ┌────────────────────┐ |
| 55 | │ │ |
| 56 | │ 原图片 ┌───┤ |
| 57 | │ │重点│ |
| 58 | └───────────────┴───┘ |
| 59 | ``` |
| 60 | |
| 61 | **参数:** |
| 62 | |
| 63 | - `--mode sticker`:贴纸模式 |
| 64 | - `--text`:配文内容 |
| 65 | - `--position`:位置,可选 `top-left`、`top-right`、`bottom-left`、`bottom-right`、`center` |
| 66 | - `--bg-color`:标签背景色(默认 `#FFE4B5`,浅橙色) |
| 67 | - `--text-color`:文字颜色(默认 `#333333`) |
| 68 | - `--font-size`:字体大小(默认 28) |
| 69 | - `--opacity`:背景透明度 0-255(默认 230) |
| 70 | - `--radius`:圆角半径(默认 10) |
| 71 | - `--margin`:距边缘距离(默认 20) |
| 72 | |
| 73 | ### 批量处理 |
| 74 | |
| 75 | 处理多张图片: |
| 76 | |
| 77 | ```bash |
| 78 | python scripts/image_processor.py ./images/*.jpg --output-dir ./output --mode frame --text "配文" |
| 79 | ``` |
| 80 | |
| 81 | ## 字体配置 |
| 82 | |
| 83 | 脚本会按以下顺序查找中文字体: |
| 84 | |
| 85 | 1. `C:/Windows/Fonts/msyh.ttc` - 微软雅黑 |
| 86 | 2. `C:/Windows/Fonts/simhei.ttf` - 黑体 |
| 87 | 3. `C:/Windows/Fonts/simsun.ttc` - 宋体 |
| 88 | 4. 系统默认字体(可能不支持中文) |
| 89 | |
| 90 | 如需使用自定义字体: |
| 91 | |
| 92 | ```bash |
| 93 | python scripts/image_processor.py input.jpg output.jpg --font "C:/MyFonts/custom.ttf" --text "配文" |
| 94 | ``` |
| 95 | |
| 96 | ## 颜色参考 |
| 97 | |
| 98 | 常用颜色值: |
| 99 | |
| 100 | | 名称 | 代码 | 用途 | |
| 101 | | ---- | ------------------- | ------------- | |
| 102 | | 白色 | `white` / `#FFFFFF` | 边框背景 | |
| 103 | | 黑色 | `black` / `#000000` | 深色背景/文字 | |
| 104 | | 浅橙 | `#FFE4B5` | 贴纸背景 | |
| 105 | | 浅蓝 | `#E3F2FD` | 贴纸背景 | |
| 106 | | 浅绿 | `#E8F5E9` | 贴纸背景 | |
| 107 | | 浅粉 | `#FCE4EC` | 贴纸背景 | |
| 108 | |
| 109 | ## 与其他 Skill 配合 |
| 110 | |
| 111 | 1. 使用 [图片搜索 Skill](../image-search/SKILL.md) 找到合适的配图 |
| 112 | 2. 使用本 Skill 添加配文 |
| 113 | 3. 在 [通用写作 Skill](../general-writing/SKILL.md) 中引用处理后的图片 |
| 114 | |
| 115 | ## 注意事项 |
| 116 | |
| 117 | 1. **图片格式**:支持 JPG、PNG、WEBP 等常见格式 |
| 118 | 2. **输出格式**:根据输出文件扩展名自动选择格式 |
| 119 | 3. **Emoji 渲染**:需要安装 pilmoji 库 |
| 120 | 4. **字体权限**:确保对字体文件有读取权限 |