SCode原生Markdown预览不生效,需同时满足:文件后缀为.md、已保存、启用Markdown Preview和Markdown Language Features扩展;导出PDF推荐Markdown Preview Enhanced,配YAML front matter和CSS字体声明。

image

VSCode原生预览不生效?先检查这三件事

不是插件没装对,而是基础识别链断了。VSCode必须同时满足三个条件才触发 Markdown 预览:文件后缀是 .md文件已保存(右上角无圆点)内置扩展 Markdown Preview 必须启用。很多人 Ctrl+Shift+V 没反应,其实是文件还处于“未保存”状态,或者误关了 Markdown Language Features——在 Extensions 页面搜这两个名字,确保开关是打开的。

导出PDF中文乱码?别用 Markdown PDF 插件

Markdown PDF(作者 yzane)底层依赖 PhantomJS,2026 年已彻底失效,中文渲染基本不可用:标题错位、缺字、方框满天飞。直接卸载它。取而代之的是 Markdown Preview Enhanced(作者 shd101wyy),它默认走 Puppeteer + Chromium 渲染,中文字体天然支持。安装后右键编辑器 → Markdown Preview Enhanced: Export to PDF 即可导出。首次导出会自动下载 Chromium(约 150MB),需联网且等待几秒,别误以为卡死。

导出前必须加 YAML front matter 控制字体

即使用了 Markdown Preview Enhanced,不配字体,PDF 仍可能用默认衬线体或显示异常。在文档最顶部插入:

复制AI写代码

---

stylesheet: ./style.css

---

并在同目录建 style.css,内容至少包含:

复制AI写代码

body {

font-family: "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;

}

注意两点:stylesheet 路径必须是相对路径;CSS 中不要用 flexgrid,PDF 渲染器只认基础属性,@pagemarginfont-family 才真正生效。

公式和 Mermaid 图导出失败?检查语法闭合与主题配置

导出空白页或某段消失,90% 是文档里混入了非法 HTML 或公式/Mermaid 块未正确闭合。比如 $$ \int_0^1 x^2 dx $$ 少一个 $,或 mermaid 后没配对的 ``,整个导出流程就会静默失败。Mermaid 图还要额外注意:MPE 默认 theme 是黑色背景,可能导致图块变黑块,需进插件设置把 mermaid theme 改成 defaultneutral。公式若仍不渲染,确认设置了 "markdown.extension.math.enabled": true(这是 MPE 的配置项,不是 VSCode 原生设置)。