2023年10月13日 星期五

xelatex 中文處理

最早是透過 cwtex 手冊把 latex 學起來, 中文使用者我認為要能處理中文, 才算是把 latex 學起來, 早期的 latex 書籍幾乎都沒有介紹中文怎麼處理, 很有可能只能處理英文, 倚天有出過可以處理中文的 tex 系統, 不過我沒看過。後來改用 cjk 環境來處理中文。2023 之後可能改用 xelatex 來處理中文。

cwtex 手冊寫的非常好, 把常用的用法都敘述出來, 整本看完, 幾乎就會用了, 也有能力自己找要的 macro 來用, 如果只看一本書學 latex, 就是 cwtex 手冊。我打字的排版規範, 都是遵照 cwtex 手冊的建議, 如果你覺得我文章的排版看起來很舒服, 都是 cwtex 手冊的功勞。

tex 有很多演化, 搞不太清楚, 而他們的中文處理也有一些新的東西, 趁這次把相關資料都找了一遍。xelatex 雖然進步到可以用作業系統的字型, 但還是有東西難倒我, 我怎麼知道字型的名字, 然後該怎麼選這個字型呢? 沒有 word gui 的方便, 要更換字型是很困難的, 所以我以前寫的文章幾乎都不太換字型, 因為除了 cwtex 那五套字型名稱, 其他真的不太會用。連安裝 latex 中文字型都難倒我。

pdflatex -synctex=1 -interaction=nonstopmode document.tex
xelatex document.tex
已經直接就產出 pdf 檔案, 不用 dvi -> ps -> pdf 這些階段。

目前看來使用 ctex macro 就可以簡單處理中文, ctexart, ctexrep, ctexbook, ctexbeamer 分別對應到中文文件。使用 cjk 的舊文件暫時不會更新, 等需要修改時, 再來更新成 xelatex 中文即可。cwtex 換到 cjk 時, 還要將 big5 轉換為 utf8, 比較辛苦, 換到 xelatex 應該會輕鬆點。

根據《XeLaTeX+xeCJK中文字型設定》字型可以用 fc-list 取得名稱, 例如:
fc-list :lang=zh-cn
fc-list :lang=zh-tw

/usr/share/fonts/truetype/arphic/uming.ttc: AR PL UMing TW MBE:style=Light
/usr/share/fonts/truetype/arphic-bkai00mp/bkai00mp.ttf: AR PL KaitiM Big5,文鼎PL中楷:style=Regular

xelatex 設定字型指令是:
\documentclass{ctexart}
%\setmainfont{Liberation Serif} 

%\setCJKmainfont{AR PL UMing TW MBE}
\setCJKmainfont{AR PL KaitiM Big5}

\begin{document}

這樣就可以更換字型了, 如果指定了錯誤字型, xelatex 會發出找不到字型的錯誤訊息。



ref:
  1. 如何編寫中文的 LaTeX 文件
  2. latex中\documentclass[UTF8]{ctexart} 和ctex一样吗?
  3. 中文宏包CJK、xeCJK、luatexja、ctex的区别和联系
  4. TeX 家族(TeX, XeTeX, LuaTeX,XeLaTeX …看完这篇就懂了)
  5. 倚天 CTeX 之執行、Preview 及列印

沒有留言:

張貼留言

使用 google 的 reCAPTCHA 驗證碼, 總算可以輕鬆留言了。

我實在受不了 spam 了, 又不想讓大家的眼睛花掉, 只好放棄匿名留言。這是沒辦法中的辦法了。留言的朋友需要有 google 帳號。