Obsidian 导出文档乱码?3 招搞定
文档乱码现象
Obsidian 导出 PDF 时中文显示为乱码,通常是由于 PDF 导出插件使用的默认字体不支持中文字符 所致。以下是几种常见解决方法:
方法一:使用支持中文的字体(推荐)
Obsidian 官方导出 PDF 功能(或通过“打印”方式)依赖浏览器的渲染引擎,而默认字体可能不包含中文字形。
步骤如下:
-
安装中文字体(如思源黑体、微软雅黑、苹方等)到你的操作系统。
-
在 Obsidian 中自定义 CSS:
-
打开 Obsidian 设置 → 外观 → CSS 代码片段(CSS snippets)。
-
创建一个新的
.css文件,例如chinese-font.css,内容如下:body{font-family:"Microsoft YaHei","PingFang SC","Hiragino Sans GB","Noto Sans CJK SC","Source Han Sans SC", sans-serif;} -
保存后,在 CSS 代码片段面板中启用该片段。

-
重新导出 PDF:
-
使用 Ctrl+P(Windows/Linux)或Cmd+P(Mac)打开打印对话框。 -
目标打印机选择 “另存为 PDF” 或 “Save as PDF”。
提示:Obsidian 的“导出为 PDF”功能(通过核心插件“Export to PDF”)内部也是调用打印功能,因此上述 CSS 同样生效。
方法二:使用 Pandoc + 自定义模板(高级用户)
如果你熟悉命令行,可以使用 Pandoc 将 Markdown 转换为 PDF,并指定中文字体:
pandoc your-note.md -o output.pdf --pdf-engine=xelatex -Vmainfont="Noto Sans CJK SC"
前提是你已安装:
-
Pandoc -
LaTeX 发行版(如 TeX Live、MiKTeX) -
支持中文的字体(如 Noto Sans CJK / 思源黑体)
方法三:改用第三方插件(如 “Advanced Export”)
某些社区插件(如 Advanced Export)提供更灵活的导出选项,可配合 HTML 模板和自定义 CSS 使用,更容易控制字体。
注意事项
-
macOS 和 Windows 默认中文字体不同,建议在 CSS 中列出多个备选字体。 -
如果使用的是 Linux,确保系统已安装中文字体(如 fonts-noto-cjk)。 -
某些 PDF 阅读器可能缓存旧版本,导出后请刷新或重新打开 PDF。
夜雨聆风
