Marp for VS Code插件需认准marp-team作者、蓝白渐变圆环图标,安装重启后.md文件右上角出现▶▶图标并含Toggle Marp Feature选项即为装对;YAML头须严格为前三行---、marp: true、---,无空行或符号错误。

能直接导出为 PPTX 格式,但需要额外配置且不推荐作为主力输出方式——Marp 的核心优势在 HTML 和 PDF,PPTX 导出是有限兼容的“降级方案”,容易丢样式、错代码块、乱公式。
怎么确认 Marp for VS Code 插件装对了
VSCode 扩展市场搜 Marp for VS Code,只认准作者是 marp-team(不是 yzane,那是旧版)、图标为蓝白渐变圆环的官方扩展。装完重启 VSCode,打开任意 .md 文件,右上角必须出现双三角形图标 ▶▶;点它弹出菜单含 Toggle Marp Feature 才算生效。
AI一键生成成品PPT☜☜☜☜☜点击生成;
常见卡点:
- 装了
Markdown Preview Enhanced:它会劫持预览逻辑,导致▶▶不显示,卸载它或禁用其预览功能 - 装了
Marp CLI或Marp App:这些是命令行/桌面工具,和 VSCode 无关 - 插件已安装但未启用:重启 VSCode 后再检查
YAML 头必须严格写在文件最开头
--- 必须是第一行,marp: true 是第二行,--- 是第三行,第四行起才是内容。中间不能有空行、注释或任何字符。错一格,Marp 就不识别为幻灯片文件。
正确写法:
--- marp: true theme: default paginate: true --- # 第一页标题
错误写法(以下任一都会失效):
- 开头有空行或
# 注释 - 把
marp: true写成marp = true或marp: True - YAML 头里用了中文冒号或全角符号
导出 PPTX 的实操路径和坑
Marp 本身不原生支持 PPTX 导出,需通过 VSCode 命令面板触发间接流程:按 Ctrl+Shift+P(Mac 为 Cmd+Shift+P),输入 Marp: Export slide deck,选 PPTX。但这个操作依赖底层 marp-cli 工具链,实际表现不稳定。
你大概率会遇到:
- 导出后代码块变成纯文本,无语法高亮
- 数学公式渲染为乱码或图片缺失
- 本地图片路径失效(即使开了
allowLocalFiles: true) - 主题色、字体大小全部回退到默认 Office 样式
真正可靠的输出顺序是:HTML → 浏览器打印为 PDF,或直接用 Marp: Export slide deck → HTML 后发给听众——它自带翻页动画、响应式布局、可点击代码块,比 PPTX 更贴近开发者工作流。
图片和分页的硬性规则
本地图片要显示,YAML 头必须加 allowLocalFiles: true,且图片路径得是相对路径(如 ./img/demo.jpg),不能是绝对路径或 file:// 协议。
分页只有两种可靠方式:
- 手动用
---分割(推荐,最可控) - 用
headingDivider: 2让所有##标题自动分页(但会丢失对单页内容粒度的控制)
别用 *** 或 ___ 替代 ---,Marp 只认三个短横线;也别指望空行能分页——它不会生效。
最常被忽略的一点:Marp 的 PPTX 导出本质是把 HTML 渲染结果截图再打包,不是语义化转换。所以一旦页面里有动态元素(比如 、WebGL 图表)、自定义 CSS 动画或复杂表格,PPTX 几乎必然失败。真要交 PPTX,建议导出 HTML 后用 Chrome 打开,再用“打印→另存为 PDF→PDF 转 PPTX”这类二次转换,至少保内容不丢。











