marp for vs code是vscode中唯一原生支持实时预览、主题切换及pdf/html导出的markdown幻灯片方案;需认准marp-team官方扩展、严格配置yaml头(--- marp: true ---)、用---分页,并通过拖入图片或同目录相对路径插入图片。

Marp for VS Code 插件不是“可选工具”,而是当前 VSCode 生态中唯一能原生支持实时预览、主题切换、PDF/HTML 导出且无需额外服务的 Markdown 幻灯片方案。装错扩展、漏配 YAML 头、误用分页符,是 90% 新手卡住的三处硬伤。
AI一键生成成品PPT☜☜☜☜☜点击生成;
怎么确认装对了 Marp for VS Code?
VSCode 扩展市场里搜 “Marp” 会出现多个结果,但只有作者是 marp-team(不是 yzane,那是旧版)、图标为蓝白渐变圆环、名称精确匹配 Marp for VS Code 的才是正确版本。安装后,打开任意 .md 文件,编辑器右上角应立刻出现一个双三角形图标(▶▶),点击它会弹出 “Toggle Marp Feature” 菜单——这个图标不出现,说明插件没生效或被其他 Markdown 插件拦截。
常见错误现象:
- 装了 “Marp CLI” 或 “Marp App” 相关扩展:这些是命令行工具或独立桌面应用,和 VSCode 无关
- 装了 “Markdown Preview Enhanced”:它会抢占
.md预览逻辑,导致 Marp 图标不显示 - 插件已安装但未启用:重启 VSCode 后再检查
--- marp: true --- 必须写在文件最开头,且不能有空行
这是 Marp 解析幻灯片的开关信号,不是可选注释。如果写成:
```markdown # 我的标题 <hr><h2>marp: true</h2><pre class="brush:language-;toolbar:false;">
——Marp 完全不会识别。必须严格满足:
- 文件第一行就是
--- - 第二行是
marp: true(可加theme、paginate等字段) - 第三行是
--- - 第四行开始才是内容,中间不能插入空行或注释
参数差异影响很大:headingDivider: 2 表示所有 ## 标题自动分页;headingDivider: [2,3] 则 ## 和 ### 都分页;不写该字段时,仅靠 --- 分页。
图片插入失败?本地路径和尺寸控制是关键
直接写  在预览中大概率显示为红叉,因为 Marp 默认不读取本地文件系统路径。解决方式只有两个:
- 把图片拖进 VSCode 编辑器,它会自动复制到当前文件夹并生成相对路径(推荐)
- 手动确保图片与
.md文件在同一目录下,且路径为(无点斜杠)
图片默认撑满宽度,遮挡文字。必须显式限制尺寸:
```markdown
{ width=300 }
<!-- 或 -->
@@##@@
```
注意:{ width=300 } 是 Marp 支持的 inline HTML 扩展语法,不是标准 Markdown,也不支持 w:300 这种写法。
导出 PDF 失败?别碰 export as pptx
Marp 原生只支持导出 PDF 和 HTML,根本不提供 PPTX 功能。所谓“导出失败”,八成是点了错误菜单:
- 正确路径:
Ctrl+Shift+P→ 输入Marp: Export as PDF→ 回车 - 错误操作:在右键菜单里找 “Export as pptx” 或安装第三方转换插件
- 导出卡住常见原因:PDF 导出依赖系统内置的 Chromium 渲染引擎,若 VSCode 以管理员模式运行,而 Chromium 没权限访问临时目录,就会静默失败
真正容易被忽略的是:导出前务必关闭所有其他 Marp 预览窗口(尤其是多个标签页同时开着预览),否则 PDF 可能混入上一页的样式或页眉。











