承先前在 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}
有任何建議或錯誤,再麻煩留言指教。
發表迴響