承先前在 LaTeX 中/英文報告 preamble 設定 中的討論,最近在試的時候發現 preamble 的設定可以再更精簡。以下開始。

在開始編輯文件前,一樣將編譯環境設定為 XeLaTeX,並使用 UTF-8 編碼。
文章的起頭為:
\documentclass[a4paper, 12pt]{article}
格式為文章(article),A4 的紙張大小,字體為 12 號字。紙張若要 B5 則用 b5paper 選項。中文字小於 12 號字都太小了,14 號字以上可用 extsizes 套件來支援。
接著引入 xeCJK 套件,來支援中日韓書寫,這個部分更動較大的:
\usepackage{xeCJK}
\xeCJKsetup{AutoFakeBold=true, AutoFakeSlant=true}
\setCJKmainfont{標楷體}
\setmainfont{Times New Roman}
這邊把中文字體設定為「標楷體」,英文為 Times New Roman,是典型的學術界的搭法。字體的部分可以依個人喜好去配置。如果 \setmainfont 這一行不加則會用 LaTeX 預設的 Computer Modern 字體,跟楷體字搭配上也很 OK。
在套件相容性的部分,用 xeCJKsetup 來做細部設定比較不會有問題。AutoFakeBold=true 開啟支援粗體字,也可以填數字自己設計粗體強度。AutoFakeBold=1 就有很不錯的效果;AutoFakeSlant=true 則開啟支援斜體字,一樣可自填數字調整,AutoFakeSlant=.4 效果還不錯。若要關閉粗體或斜體選項請設定成 false 或移除上面 \xeCJKsetup... 那一行。
至於網路上建議的中文環境一定要加的 \XeTeXlinebreaklocale "zh" 與 \XeTeXlinebreakskip = 0pt plus 1pt 兩個選項,經測試後似乎沒必要。也許是 xeCJK 後來支援了。
另外也有建議額外引入 fontspec 套件再設定英文字體。其實這也不需要,因為引入 xeCJK 就會連帶引入了,這也是為什麼上面的 \setmainfont{...} 這一行可以跟著 xeCJK 的設定一起走就好。
再來引入 setspace 套件來設定行高:
\usepackage{setspace}
\onehalfspace
以中文字來說,LaTeX 預設的行距太小了,上面的 1.5 倍的設定比較合適。兩倍行高請用 \doublespace。使用 setspace 套件來設定行高最為簡單。
設定段落間距:
\setlength{\parskip}{1ex plus 0.5ex minus 0.2ex}
上面的設定是一個字高的間距,可依排版自動調整,最大 1.5,最小 0.8 個字高。因為 LaTeX 預設有段落縮排,其實不會因為跨頁混淆。這個部分除了可以保留適當的段落間的空白,跟圖、表、方程式這類元件之間的排版效果也比較好。
最後,如果有用到 LaTeX 的目錄、圖表目錄、圖表敘述、摘要等功能,可加入下段以取代原本的英文標題字:
\renewcommand\contentsname{目~錄}
\renewcommand\listfigurename{圖~目~錄}
\renewcommand\listtablename{表~目~錄}
\renewcommand\abstractname{摘~要}
\renewcommand\figurename{圖~}
\renewcommand\tablename{表~}
\renewcommand\refname{參~考~文~獻}
當中的 ~ 為字與字之間的小空隔,可以視排版拿掉。
以上就是最基本的 LaTeX 中英文件的基本設定。接下來就能 \begin{document} 開始寫本文了。
以下則一一介紹我個人覺得不錯的套件,程式碼一樣放在 preamble 區。細節可上 CTAN 查詢。
插入圖片或 PDF:
\usepackage{graphicx}
\graphicspath{{figures/}}
可支援從文件目錄底下的 figures/ 資料夾指定檔名並以 \includegraphics 指令插入圖片。
數學工具:
\usepackage{mathtools}
引入後就能打出包山包海的數學式了。
物理數學表述工具
\usepackage{physics}
引入後像是微分算式、梯度、旋度、常用函數等數學式可以得到很好的控制。
科學單位表述工具:
\usepackage{siunitx}
\sisetup{
list-final-separator = { 和 },
list-pair-separator = { 和 },
range-phrase = { 至 }
}
引入後對於像是 1.2 km/s 這種科學表述就能輕易管理與控制。上述 \sisetup 則把科學範圍表述的銜接字換成中文化,使用上會變成像「0 km/h 至 100 km/h」這樣。
最後是統整後的內容:
\documentclass[a4paper, 12pt]{article}
%%%%% 中文環境設定 %%%%%
\usepackage{xeCJK}
\xeCJKsetup{AutoFakeBold=true, AutoFakeSlant=true}
\setCJKmainfont{標楷體}
\setmainfont{Times New Roman}
\usepackage{setspace}
\onehalfspace
\setlength{\parskip}{1ex plus 0.5ex minus 0.2ex}
%%%%% 數學相關工具 %%%%%
\usepackage{mathtools}
\usepackage{physics}
\usepackage{siunitx}
\sisetup{
list-final-separator = { 和 },
list-pair-separator = { 和 },
range-phrase = { 至 }
}
%%%%% 匯入工具 %%%%%
\usepackage{graphicx}
\graphicspath{{figures/}}
%%%%% 其它 %%%%%
\renewcommand\contentsname{目~錄}
\renewcommand\listfigurename{圖~目~錄}
\renewcommand\listtablename{表~目~錄}
\renewcommand\abstractname{摘~要}
\renewcommand\figurename{圖~}
\renewcommand\tablename{表~}
\renewcommand\refname{參~考~文~獻}
\begin{document}
% 本文
\end{document}
有任何建議或錯誤,再麻煩留言指教。
發表留言