用途
Beautiful Slides 是一个用于制作可编辑 PowerPoint 演示文稿(.pptx)的编写技能,目标是产出通过人类「这看起来是有意为之」标准的幻灯片。它面向会编写 Python、执行代码、检查渲染输出并迭代的大语言模型,不假设有图形界面,假设环境具备 Python 3、python-pptx 和无头 LibreOffice(soffice)。
其核心主张是:叙事幻灯片每张只承载一个与决策相关的想法;证据可以密集,但必须指向一个结论。演示文稿不是情绪板,也不是备忘录,而是一台记忆机器——故事第一,证据第二,附录始终存在。
何时使用
以下任一情况触发:提到作为输入或输出的 .pptx 文件;出现「deck」「slides」「presentation」「pitch」「keynote」「read-ahead」「board」「launch」等词;请求构建、编辑、拆分、合并、总结或提取幻灯片内容;请求为演讲、董事会、发布会或晚宴制作视觉内容。不应触发的场景:纯文档工作(文章、报告、博客、邮件),除非用户明确要求将内容渲染为幻灯片。
主要能力
- 从简报生成可编辑 .pptx:使用 python-pptx 精细控制,创建新的 Presentation,设置幻灯片为 16:9 宽屏(13.333 英寸 × 7.5 英寸)。
- 情绪→模式映射:从简报表述中识别演示文稿的情绪,选择且仅选择一个模式,并在全篇保持一致。模式包括:sv-keynote、consulting-boardroom、editorial-magazine、craft-minimal、playful-marketing。每个模式有固定的配色、字体和布局立场。
- 画布、网格与节奏:16:9 画布,12 列网格,可选折叠为 6 列或 4 列;基线网格为 8 px / 4 pt / 50800 EMU;使用固定间距刻度(4/8/12/16/24/32/48/64/96/128 px);目标留白与墨水比例按类型区分。
- 字体系统:使用精确字号阶梯(112/84/60/44/32/24/18/14/12 pt);定义现场正文最小字号(小型场地 24pt、礼堂 32pt、阅读型笔记本 14pt);规定行高、字距和每行字符数范围;数字使用表格衬线。
- 颜色纪律:一个背景、一个正文色、一个强调色,共三种颜色;正文对比度至少 7:1,现场演示建议 9:1;仅在简报提到「stage」「OLED」「cinematic」时使用深色模式;提供色盲安全搭配建议。
- 结构模式:提供 SCQA、Minto 金字塔、问题—激化—解决、Duarte Sparkline、英雄弧等结构;并给出 10 页 pitch deck、5 页高管更新、30 页技术演讲的默认节奏。
- 幻灯片语法:定义一系列幻灯片模式(Marquee、Knife-Cut、Verdict、Pullquote、Number Hammer、Counterweight、Triptych、Proof Plot、System Map、Runway、Poster、Crop Demo、Resolution、Dossier、Holding Screen),规定各自用途、使用时机、构图边界和文案限制。
- 质量检查:使用 soffic 渲染为 PDF 再转 PNG 检查;运行边界检查脚本(check_bounds.py 必须退出 0);运行必含项自审,将简报必含项标记为 COVERED / MENTIONED / MISSING,直到全部 COVERED。
使用方式
标准工作流程是一个小而可靠的循环:
- 解析简报:提取受众、长度(如给出确切页数)、情绪线索、必含项、禁止项。缺失时选择合理默认并注明。
- 选定唯一模式:依据情绪→模式表,一个模式、一套配色、一种字体立场,全篇一致。
- 撰写大纲:每张一行,格式为「N. [模式名] — [单一信息]」,在大纲覆盖所有必含项前不得继续。
- 用 Python 编写:使用 python-pptx,设置宽屏尺寸,逐张生成并保存。
- 渲染为 PNG:先用 soffic 无头转换为 PDF,再用 pdftoppm -r 100 转为逐张 PNG,至少检查第 1、2 和最后一张。
- 运行边界检查:python ${SKILL_DIR}/scripts/check_bounds.py out.pptx 必须退出 0,修复违规并重新保存。
- 运行必含项自审:提取必含项清单和 pptx 文本,逐项标记,修补直到全部 COVERED。
- 交付。任何步骤失败都应回退修复,不能通过缩小字号到不可读或丢弃必含项来掩盖。
适用场景
- 需要从简报表述生成完整、可编辑的 PowerPoint 演示文稿。
- 需要演示文稿在视觉上保持纪律性、风格一致、元素不越界。
- 需要确保简报中所有必含要点都出现在最终演示文稿中。
- 适合 pitch deck、董事会材料、发布会、技术演讲、read-ahead 等演示场景。
限制
- 不假设有图形界面,依赖 Python 3、python-pptx 和无头 LibreOffice(soffice)。
- 若字体未安装,LibreOffice 会静默替换,需要安装字体或改用可正确解析的字体,且未验证渲染输出不得交付。
- 模式一旦选定,不得混入其他模式元素;简报若暗示两种模式,以最后陈述的风格句选主导模式,一致性优先于最优性。
- 深色模式仅用于 cinematic keynote、受控显示器的产品演示和舞台环境,多数 SaaS 演示文稿不应默认深色。
- 颜色使用受限:一个背景、一个正文色、一个强调色,图表需更多时只能使用强调色的深浅变化加一种中性灰,不得引入第四种色相。
- 关于具体收费、价格、许可等信息,暂未提供。