2020年1月27日 星期一

以 xeCJK 在 XeLaTeX 處理繁體中英文橫書排版(懶人範本)


幾天前友人想要申請教育部獎學金,打算用 LaTeX 打中英混合的計畫書,竟然查到前面這篇以 xeCJK 在 XeLaTeX 處理繁體中英文橫書與直書混排。我後來發現這篇文章有幾個缺點,最嚴重的是沒有提供一個簡易的範本,因此以下就提供這樣的懶人範本,基本上整個複製貼上到您的 TeXstudio 或者 MiKTex, 編譯時讓程式下載 xeCJK 以及相關需要的 package, 應該就可以輸出了。記得編譯時要選擇使用 XeLaTeX 喔,用 PdfLaTeX 是不會過的。

至於注音聲調符號這件事,我們就先略過吧。


% 連同這行一起複製
\documentclass[12pt,a4paper]{article}
\usepackage{fontspec}
\usepackage{xeCJK}

% 英文部份 fontspec 的主字形,不設定則是使用內建的 Computer Modern.
%\setmainfont{Helvetica} 

% 中文部份 xeCJK 的主字形。MacOS 繁中使用者比較可能的內建字形是
\setCJKmainfont{Kaiti TC} 

% xeCJK 的一些版面設定
\defaultfontfeatures{Ligatures=TeX} % 用 `` 表示英文左雙引號, '' 表示右雙引號
\xeCJKsetup{CJKglue=\hspace{0pt plus .08 \baselineskip }}
\xeCJKsetup{RubberPunctSkip=false}
\xeCJKsetup{PunctStyle=plain} % 標點符號一概全形
\xeCJKsetup{CheckSingle=true} % 首字不放行尾,似乎不太有用

% 設定邊界
\usepackage{anysize}
\marginsize{.8in}{.8in}{1in}{1in} 

\setlength{\parskip}{.8em} % 段落距 0.8 字
\setlength{\parindent}{2em} % 段落開頭空兩字

\author{Darren Hsu}
\title{標題}

\begin{document}
\renewcommand{\abstractname}{\large 摘要}
\maketitle
內文...
\end{document}
% 一直複製到這裡。

以上是最基本的設定,輸出長得像這樣:



接著,我們加入一些文字看看。這裡面的摘要是直接使用 \begin{abstract} 跟 \end{abstract} 作成的,因為我們已經把 abstract 換成「摘要」了,讀者如果想換成其他的字,請自己更改 \renewcommand 那一行。



中英文字形的搭配上可以自由發揮(字形的英文名稱可以參考這裡)。我個人覺得還不錯的幾個內建字體組合(手邊只有 Mac,不好意思 XD)有:

  1. 中文:標楷 BiauKai,英文:Computer Modern (內建字體)
    如果非要用標楷體(例如說寫計畫書),這算是不差的選擇。
  2. 中文:楷體 Keiti TC,英文:Computer Modern
  3. 中文:黑體 Heiti TC,英文:Helvetica
如果有使用 Noto Sans 字體的話,那選擇就很多,我喜歡中文 Noto Sans CJK TC DemiLight 跟英文 Noto Sans Display Regular 的組合(下圖)





以上總結,重點是 (1) 使用上面那個範本 (2) 自己選喜歡的字型來搭配。有更多問題,歡迎在下方留言!

沒有留言:

張貼留言