Gamma、Tome 这些工具生成的幻灯片,要么每页是一张图片——本质上是截图塞进了 .pptx 的壳子里,要么是 HTML 渲染的网页,导出成 PowerPoint 的瞬间排版就崩了。
ChatGPT 用 python-pptx 直接生成,能编辑,但 AI 对 DrawingML 格式的训练数据太少,生成出来的东西只有文字框加项目符号,太丑了。
今天分享 PPT Master 目前 GitHub 2.8 万星,生成的PPT精美多了。

这是整个项目最关键的一个设计决策。
要让 AI 生成的幻灯片在 PowerPoint 里可编辑,输出必须是原生 DrawingML 形状——也就是 PowerPoint 底层的 XML 格式。
问题在于 DrawingML 极其啰嗦,一个圆角矩形就要写几十行嵌套 XML,AI 几乎没有相关的训练数据,直接生成不靠谱。
HTML 呢?AI 写 HTML 确实熟练,但 HTML 是"文档流"——段落、标题、列表,元素位置由内容决定。
PowerPoint 是"画布"——每个元素独立定位,没有流式布局。这不是算一下坐标就能解决的结构性矛盾。
PPT Master 的做法是让 AI 生成 SVG,再用脚本把 SVG 转成 DrawingML。
为什么这条路走得通?因为 SVG 和 DrawingML 本质上是同一种东西的两种方言——都是基于绝对坐标的二维矢量图形格式。
<rect> 对应 <a:rect>,<text> 对应 <a:txBody>,渐变、透明度、旋转变换一一映射。这不是格式转换,是方言翻译。
而且 SVG 有一个独特的优势:AI 能可靠生成它,人类能在浏览器里直接预览调试,脚本能精确转换它——三个角色在同一个格式上达成共识,这在其他所有候选格式里做不到。
20 页以上的 PPT 有一个经典的 AI 漂移问题:第 1 页用的蓝色到第 15 页可能已经偷偷变成了另一种蓝色,字体从微软雅黑悄悄变成了思源黑体。
PPT Master 的解法是 spec_lock.md——一份机器可读的执行合约,把 HEX 颜色值、字体名称、图标库这些参数锁死。
SKILL.md 里硬性规定:Executor 每生成一页之前必须重新读一遍 spec_lock.md。不是"建议"读,是"不读就违规"。
这个设计和它的前置环节 design_spec.md 形成分工——design_spec.md 写的是"为什么选这组颜色"(给人看),spec_lock.md 写的是"具体用 #2B5FD9"(给 Executor 执行)。
两份文件看似重复,实际服务不同消费者。没有后者,AI 在长上下文里的压缩漂移会让一套 PPT 看起来像三个人做的。
说完技术,讲讲怎么上手。三步:
1.安装ppt-master包
git clone https://github.com/hugohe3/ppt-master.gitcd ppt-masterpip install -r requirements.txt# 验证安装是否成功python -c "import pptx; import fitz; print('All core dependencies OK')"2. 在ppt-master目录中创作 用Claude Code、Cursor、VS Code Copilot 这类 AI IDE 里打开ppt-master目录,把 PDF、DOCX、Markdown 或者网页链接放到 projects/ 文件夹,然后在聊天框里说一句:
❝请创建一个 3 页测试 PPT,封面 + 内容页 + 封底,主题"Hello World"
AI 会先确认设计方案(模板、比例、页数、配色),确认后全自动跑完——内容分析、布局设计、图片获取、SVG 生成、PPTX 导出。
3. 拿到可编辑的 .pptx。 输出在 exports/ 目录,每个形状、文字框、渐变都是原生 PowerPoint 对象,点哪儿改哪儿。
装好 Python 和 requirements.txt 后,生成 PPT 的全部功能已经就绪。下面是边缘场景的备用方案和增强项——只有遇到对应的具体场景才需要装。
| CairoSVG | svglib(已默认安装)足够大多数场景。 | pip install cairosvg | python -c "import cairosvg" |
| Pandoc | .doc、.odt、.rtf、.tex、.rst、.org、.typ。.docx/.html/.epub/.ipynb 已由 Python 原生处理。 | .msi 安装 | pandoc --version |
如果公司有品牌模板,不用每次从零设计——跑一次 /create-template 就能把现有 .pptx 解析成布局 SVG + 设计规范,之后的每一份 PPT 都沿用这套视觉体系。
生成过程中 localhost:5050 会开一个浏览器实时预览,不满意可以直接拖元素、改颜色、调字号,改完一键应用回源文件。
还有一个我没想到的功能:告诉 AI"给这个 PPT 生成音频",它会把每页 Speaker Notes 转成语音嵌回 PPTX,PowerPoint 打开直接自动播放。支持用你自己克隆的声音来读——做培训课件的话这个很实用。
PPT Master 不是那种"打开浏览器就能用"的产品——Gamma 和 Canva 在这方面体验好得多。
它的定位更像一个 AI 增强的专业工具链:生成速度慢(10 页大约 10-20 分钟),需要本地环境,没有协作功能。
但它解决了一个别人都没解决的问题:AI 做出来的 PPT,每个元素都能点、能改、能拿去提案。 对经常要改 PPT 的人来说,省掉的是从截图重建每一页的时间。
❝https://github.com/hugohe3/ppt-master
推荐阅读
本公众号主要关注NLP、CV、LLM、RAG、Agent等AI前沿技术,免费分享业界实战案例与课程。
