注【2015年7月3日】:MacTex 2015已经修正了这一bug,不再需要用户手动修正了。同时也修正了原“Tex Distribution”面板不能再OS X Yosemite下工作的bug。
注1【2013年3月3日】:本方法也适用于MacTex 2012.
注2【2013年7月3日】:适用于MacTex 2013.
注3【2014年10月20日】:适用于MacTex 2014. 但在安装OS X Yosemite后,因此用户需要重新安装XQuartz(http://xquartz.macosforge.org)才能使用gs-X11。
在Mac OS X 上安装MacTex后,需要修改文件 /usr/local/texlive/2009/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-winfonts.def 中的字体设置,
才能使用XeLatex来编译中文文件。该文件的内容为:
% ctex-xecjk-winfonts.def: Windows 的 xeCJK 字体设置,默认为六种中易字体
% vim:ft=tex
\setCJKmainfont[BoldFont={SimHei},ItalicFont={[simkai.ttf]}]{SimSun}
\setCJKsansfont{SimHei}
\setCJKmonofont{[simfang.ttf]}
\setCJKfamilyfont{zhsong}{SimSun}
\setCJKfamilyfont{zhhei}{SimHei}
\setCJKfamilyfont{zhkai}{[simkai.ttf]}
\setCJKfamilyfont{zhfs}{[simfang.ttf]}
\newcommand*{\songti}{\CJKfamily{zhsong}} % 宋体
\newcommand*{\heiti}{\CJKfamily{zhhei}} % 黑体
\newcommand*{\kaishu}{\CJKfamily{zhkai}} % 楷书
\newcommand*{\fangsong}{\CJKfamily{zhfs}} % 仿宋
\newcommand*{\lishu}{\CJKfamily{zhli}} % 隶书
\newcommand*{\youyuan}{\CJKfamily{zhyou}} % 幼圆
\endinput
直接运行XeLatex编译中文文档,会出现如下错误:
! fontspec error: "font-not-found"
!
! The font "[SIMKAI.TTF]" cannot be found.
!
即字体"[SIMKAI.TTF]"无法找到。
利用fc-list命令,可以查到系统中已经安装的楷体字体的名称,即在终端执行:
sudo fc-list :lang=zh-cn
可以查到与楷体对应的行为:
楷体_GB2312,KaiTi_GB2312:style=Regular
也就是说,系统中楷体字的名称为“KaiTi_GB2312”,因此需将"[SIMKAI.TTF]"改为“KaiTi_GB2312”,即将第一行改为
\setCJKmainfont[BoldFont={SimHei},ItalicFont={KaiTi_GB2312}]{SimSun}
fc-list命令在路径/opt/X11/bin下。
自OS X 10.8 Mountain Lion开始不再安装X11,因此用户需要安装XQuartz(http://xquartz.macosforge.org)。安装XQuartz后,即可使用fc-list命令。