我弄个新环境顺着楼主的步骤试了下, 好家伙, 简直一步一坑,
最后中文字符报错的解决方案是:
- 仍然使用
--pdf-engine=pdflatex - 在文档开头声明如下
---
header-includes:
- \usepackage[UTF8]{ctex}
# 周围允许有其他的与导出 pdf 无关的 YAML 文档属性
---
如此设置后, 可以解决导出 pdf 中文问题, 楼主可以试试
附 过程记录如下
1 下载 pandoc Pandoc - Installing pandoc 这一步没啥问题, 最后命令行里 pandoc -- version 能查到就是成功
2 下载 MiKTeX Getting MiKTeX 这一步可能是对应楼主的 texlive 方案, 具体我不太熟悉 LaTeX 这一大堆知识, 完后设置为 “总是自动安装缺失宏包”
3 下载 obsidian-enhancing-export 这插件在当前最新版, 有严重 bug: 当导出后, 界面完全丢失, 无响应无报错
出问题版本是 v1.10.11, 上一个可用版本是 1.10.10
在 console 里界面完全丢失时会看到报错如下
那么卸载最新版插件, 从 Releases · mokeyish/obsidian-enhancing-export 里找个可用版本的, 手动下载回来
(如果 Obsidian 有安装 BRAT, 它可以从 github 直接安装 releases 里特定版本号 的插件)
4 设置 obsidian-enhancing-export
我这边是如图
注意要先下拉 “选择模板: pdf” 时, 再填入自定义参数
--pdf-engine=pdflatex
5 到这一步, 终于复现了楼主的报错
Error producing PDF.
! LaTeX Error: Unicode character X (U+65E0)
not set up for use with LaTeX.
如果改换 --pdf-engine=xelatex 等等也是类似报错, 具体文本各异
一顿 AI 加搜索之后, 找到的方案是, md 文档开头添加 YAML 元数据
---
header-includes:
- \usepackage[UTF8]{ctex}
---
完后终于能在导出 pdf 里看到中文字符了

