卡片插画生成器
生成不含文字、不含固定角色的场景化卡片插画配图,用于工具包/分类卡片/功能模块封面等场景。核心是"贴合功能场景 + 背景色与插画配色契合 + 严格数量控制",并通过参考成品图锁定视觉风格,避免模型自由发挥。
使用流程
1. 确认参数
从用户请求中提取:
- 场景类别(必需):研发、测试、设计、产品、运维、运营、销售、财务、HR、法务、行政、通用办公。类别定义与主体/辅助元素方向见
references/scene-categories.md。 - 主题描述(可选):更具体的主题,如"DevOps工具包""Bug追踪工具",用于细化插画内容方向。
- 主色调倾向(可选):用户可指定背景主色(如"蓝色系""紫粉色系"),不指定则按类别自动匹配参考图中最接近的色系。
若用户只说了类别没给主题,用该类别的默认主体方向即可生成;不强制反问。
2. 选择参考图
assets/ 下有 5 张参考成品图,按类别匹配优先级选用 1-2 张传入生图脚本(脚本内置映射逻辑,无需手动指定,但了解匹配关系有助于判断效果):
| assets 文件 | 原类别 | 可复用的相近类别 |
|---|---|---|
| ref_legal.png | 法务 | 行政、HR(文档/印章类视觉) |
| ref_test.png | 测试 | 运维(面板/状态/工单类视觉) |
| ref_pm.png | 产品 | 通用办公、运营(流程/看板类视觉) |
| ref_devops.png | 研发 | — |
| ref_ux.png | 设计 | — |
脚本 scripts/generate_card.py 内已固化该映射,会自动为 12 个类别各选出最匹配的 1-2 张参考图,同时始终附带一张全局风格图作为兜底锚点。
3. 调用生成脚本
python3 "scripts/generate_card.py" \
--category "研发" \
--topic "DevOps工具包(可选,不提供则用类别默认主体)" \
--color-hint "蓝紫色系(可选)" \
--output "/home/gem/workspace/.ark/output/card_illustration_YYYYMMDD/card.png" \
--resolution 2K
脚本自动执行:
- 按类别选取最匹配的 1-2 张
assets/参考图(风格锚点,绝不依赖文字描述形象/画风) - 拼装强约束 prompt(数量上限、分区锁定、无文字、背景配色规则见下文)
- 调用 Gemini Image API(多图输入模式)
- PIL 强制缩放至目标分辨率,输出比例默认 16:9(1920×1080 基准,可通过
--resolution调整清晰度)
分辨率选项:
| --resolution | 输出像素 | 画布比例 | 适用场景 |
|---|---|---|---|
| 1K | 1280×720 | 16:9 | 快速预览/小尺寸场景 |
| 2K(默认) | 1920×1080 | 16:9 | 常规卡片插画配图 |
| 4K | 3840×2160 | 16:9 | 高清大图场景 |
| 380x138 | 3800×1380 | 26:9 | 基于 380×138 等比放大10倍,用于横版banner等需要更宽画幅的场景 |
4. 上传到 BOS
dodo_cli bos upload --short-url --no-ath /path/to/card.png
返回短链接给用户,并以  格式展示图片。
核心设计规范(严格遵守)
| 要素 | 规范 |
|------|------|
| 比例 | 默认 16:9 横版,全出血无白边;如需 380×138 等比banner尺寸,用 --resolution 380x138(对应 26:9) |
| 风格 | 无描边的轻拟物扁平插画风,干净、现代、柔和、轻科技感;卡片/面板以圆角色块和小范围硬投影区分层次,不使用描边/线框 |
| 分区 | 左侧 1/3 留白区(不放主插画,只放少量很淡的随机小圆点、三角、十字点阵等几何点缀),右侧 2/3 插图区 |
| 溢出规则 | 插图允许溢出右边界(贴边/局部出血),但不能溢出到左侧留白区 |
| 文字 | 🚨 整张图不允许出现任何文字、字母、数字、标题占位 |
| 主体组合 | 右侧主图形优先由 4-6 个无描边的纸片组件/色块对象组成,允许轻微旋转、错位、层叠,避免单个巨大图标或完整 UI 截图 |
| 辅助元素 | 辅助元素应是小卡片、色块、圆点、简单图标化对象;内部细节用短色块/圆点表达,避免细线、线框、复杂 dashboard |
| 投影 | 可以有投影,但必须是很小、硬边、低扩散的偏移投影;禁止大面积模糊阴影、发光、羽化、柔焦光晕 |
| 数量自查 | 生图前必须在 prompt 中要求模型"数一遍主体和辅助元素,超过上限就删减" |
| 背景配色 | 背景色必须与右侧插画主色系呼应契合(如插画是紫粉色调,背景就用紫粉渐变),不能用无关色 |
| 场景贴合度 | 插画内容必须对应类别定义的主体/辅助元素方向,不能跨类别混用(如法务不要出现代码窗口);类别语义用少量标志性对象表达,不堆复杂界面控件 |
场景类别定义(12类的主体推荐、辅助元素、避免事项)详见 references/scene-categories.md,生成 prompt 前必须先查阅对应类别定义。
依赖
- Python 3 + Pillow(
pip install pillow) ANTHROPIC_AUTH_TOKEN环境变量(沙箱已注入)assets/下 5 张参考成品图(风格锚点,不可删除)
Scan to join WeChat group