图片型画册风 PPT
以实拍图片为主体的 PPT:根据主题搜索或生成贴合的实拍图,再按画册版式排版成 .pptx。
核心是两件事——弄到好图、把图排好看。文字只做点缀。
> 和内置 workbuddy-pptx 的分工:那个做通用 PPT(内容导向、图表和要点为主);
> 本技能做图片主导型(图占 70% 以上版面,画册/杂志质感)。
何时触发
- 用户说「做一份图片型 PPT」「画册风 PPT」「图文 PPT」「图多字少的 PPT」
- 用户要「配图的 PPT」「给我找点实拍图做成 PPT」「用 AI 生成图做 PPT」
- 场景:企业宣传、产品发布、品牌故事、旅行/摄影集、年终回顾、作品集
不用它的场景:数据报表、技术方案、培训课件(用 workbuddy-pptx 更合适)。
前置检查
开工前先确认,缺了就停下来问,别硬着头皮往下走:
- [ ] 依赖:
python-pptx和Pillow装了没?跑python3 -c "import pptx, PIL"验一下,
没装就pip install python-pptx Pillow - [ ] 主题与页数:什么主题、大概几页、给谁看、什么气质(高级冷调 / 温暖人文 / 科技感)
- [ ] 配图来源:AI 生成、用户自有图、还是网页抓取?
- [ ] 额度:用 AI 生成图会消耗额度(单张约 5-10 credits),
必须先把「准备生成 N 张、约 X credits」告诉用户并拿到同意,再开始生成。
工作流
1. 定调与故事板
先和用户确认主题、页数、气质。然后跑:
python3 scripts/init_deck.py --title "主题" --pages 8 --out deck.json
python3 scripts/init_deck.py --list # 看十种版式都有什么
生成骨架后,把每一页补成「版式 + 标题 + 要点 + 配图需求」。
版式节奏见 references/layout-library.md:同向版式不连用两次以上,
每 3-4 页插一页 text_only 给眼睛休息,首图尾图呼应。
2. 弄图(本技能的价值所在)
三条路,按优先级:
- AI 生成实拍图(主力):按
references/photo-prompt-guide.md写 prompt,
必须写全镜头/光线/质感,排除插画和 3D 味。整册固定一段「风格锁」保证色调统一。 - 图生图二次生成(有参考图时优先):把构图对的参考图作为输入,转成实拍质感。
比凭空描述稳得多。 - 用户自有图 / 网页抓取:构图对但风格不对的,走二次生成转实拍。
尺寸:满版和半版用 1536x1024,竖构图特写用 1024x1536,方图用 1024x1024。
生成前先报额度,拿到同意再动手。
3. 图片体检与预处理
python3 scripts/prepare_images.py images/ # 只体检,不动原图
python3 scripts/prepare_images.py images/ --ratio 16:9 --out ready/
体检会报出分辨率不足的图(满版低于 1920px 会糊)。默认不改动原图,
要裁剪必须显式给 --out(拒绝原地覆盖)。
4. 排版生成
填好 deck.json 后:
python3 scripts/build_deck.py --deck deck.json --images ready/ --out 成品.pptx --dry-run
python3 scripts/build_deck.py --deck deck.json --images ready/ --out 成品.pptx
先 --dry-run 体检,看有没有缺图、版式名写错,再真正生成。
引擎会自动按目标框做 cover 裁剪(居中裁,绝不变形)、按每页 overlay 加蒙版。
文字压图的规矩见 references/text-on-image.md——字号不低于 18pt、蒙版 40-60%、
文字避开图片主体,这三条是硬底线。
5. 交付
告诉用户:文件路径、页数、用了哪些版式、配图来源(AI 生成 / 用户提供),
以及是否需要导出 PDF。用 present_files 打开成品。
常见故障
| 现象 | 原因 | 处理 |
|---|---|---|
ModuleNotFoundError: pptx |
依赖没装 | pip install python-pptx Pillow |
| 图片被拉扁 / 拉长 | 同时给 add_picture 传了 width 和 height 且比例不符 | 引擎已内建 cover 裁剪,确认走了 prepare_images.py |
| 满版图发糊 | 分辨率低于 1920px | 换更大的图,或改用 split_* / gallery_* 不铺满的版式 |
| 文字看不清 | 没加蒙版或蒙版太轻 | 每页调 overlay 到 45 以上,或按图片明度换深色字 |
| 十张图色调像十个人拍的 | 没用风格锁 | photo-prompt-guide.md 里的风格锁原样拼在每张 prompt 后面 |
| 版式名报 unknown | deck.json 拼错 | init_deck.py --list 查准确名称 |
| 中文字体对方电脑显示不对 | 字体对方没有 | 跨平台交付导出 PDF,或改用「微软雅黑」 |
注意事项
- 图片版权:AI 生成图可商用;从网上抓的图必须确认授权,别直接塞进对外材料。
- 不要一次生成二十张图:先做 2-3 张给用户看风格,对上了再批量,省额度也省返工。
- 满版压迫感:全篇满版看几页就腻,按节奏库交替使用版式。
- 导出 PDF 复核:PPT 里看着没事的图,导出后可能糊或偏色。