博士論文中MacTex中文字體錯誤處理

博士論文中MacTex中文字體錯誤處理

fontspec error: "font-not-found"

在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]}


ewcommand*{songti}{CJKfamily{zhsong}} % 宋體


ewcommand*{heiti}{CJKfamily{zhhei}} % 黑體


ewcommand*{kaishu}{CJKfamily{zhkai}} % 楷書


ewcommand*{fangsong}{CJKfamily{zhfs}} % 仿宋


ewcommand*{lishu}{CJKfamily{zhli}} % 隸書


ewcommand*{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:stylex=Regular

也就是說,系統中楷體字的名稱為「KaiTi_GB2312」,因此需將"[SIMKAI.TTF]"改為「KaiTi_GB2312」,全部替換

setCJKmainfont[BoldFont={SimHei},ItalicFont={KaiTi_GB2312}]{SimSun}

再次運行XeLatex即可正常編譯中文文檔。如果還出現類似錯誤,只需做類似修改即可。

fc-list命令在路徑/opt/X11/bin下。自OS X 10.8 Mountain Lion開始不再安裝X11,因此用戶需要安裝XQuartz(http://xquartz.macosforge.org)。安裝XQuartz後,即可使用fc-list命令。


推薦閱讀:

螞蟻金服推出超好用的Sketch 插件「Kitchen」
產品經理不知道的交互設計關注點! | 人人都是產品經理
北京西站風水布局設計
中國古代城池的城門設計

TAG:中文字體 | 設計 |