在上一篇文章LaTeX 教學系列 (I):LaTeX 簡介中,提到了如何選擇編譯器與編輯器,以及一些 LaTeX 的基本操作,包含下指令、註解某段指令、開啟環境與章節深度設定。
文章目錄
LaTeX 文件的工廠:文件環境設定
LaTeX 資料夾可以比喻為一間工廠,而一間良好的工廠,應該要有設計圖、原物料、流水線等。.tex
檔就是整個工廠的設計圖,是最終要做出來的產品;字體(fonts)、圖像(figures)等則是工廠裡的原材料,用來製作產品;編譯過程就像是工廠的生產過程,把所有的原材料組合起來(文字與圖片、表格等的排列順序),根據設計圖製作出最終產品,也就是.pdf
檔。其他資源(如 bib 文件等),這些則是其他輔助材料(催化劑、乳化劑等),幫助確保產品的完整性(撰寫報告需要參考資料)。
在開始撰寫 LaTeX 文件前,除了需要建立.tex
檔外,筆者建議還要新增一個資料夾,並把所有需要的原物料都丟進去,一是方便管理,只要查看子資料夾目前有哪些檔案,命名排列整齊即可;二是有利於編輯 LaTeX 指向這些文件,若將這些原物料丟在其他廠房,搬運過來需要時間。
資料夾的設定
一個 LaTeX 資料夾最基本的樹狀結構應該如下圖所示,當然不一定要有這些子資料夾,只是給予一些建議。
project/
├── main.tex
├── figures/
│ └── example.png
├── figures/
│ └── figure1.pdf
├── bib/
│ └── references.bib
├── fonts/
└── customfont.ttf
在這個樹狀結構中:
-
project/
:是 LaTeX 檔案的根目錄,包含所有與該項目相關的文件和資料夾 -
main.tex
:這是主 LaTeX 檔案 -
figures/
:圖表資料夾 -
bib/
:引用文獻資料資料夾,其中references.bib
是一個 BibTeX 文件,包含所有引用的文獻 -
fonts/
:自定義字體資料夾,可以從網路下載
如何快速做品管:資料夾樹狀結構
如果說想要快速看一下當前 LaTeX 資料夾的結構為何,或想要知道裡面有什麼樣的文件,那麼就可以善用tree
命令。Windows 使用者可以參考【CMD】tree command 文件夾樹狀結構,導出目錄樹至txt檔,若為 macOS 請參考Mac 印出樹狀資料夾目錄結構。
實際操作
接著,我們就把前一篇文章所談到的一些內容梳理出一個脈絡,將這些指令、技巧放入我們的編輯區,透過編譯將這些內容實際製作成一個.tex
檔,並輸出成.pdf
檔。不過這邊需要注意,雖然尚未提到章節深度設定,但是為了方便,這一小節我們先偷渡一些觀念,並使用report
類別。1
\documentclass{report}
\begin{document}
This is my first {\LaTeX} typesetting example.\\
This is my first \LaTeX{} typesetting example.\\
This is my first \LaTeX\ typesetting example.\\
I am Mr. Edward G.J. Lee, G.J. is a abbreviation of my name.\\
I am Mr.\ Edward G.J. Lee, G.J. is a abbreviation of my name.\\
Please see Appendix A. We will be there soon.\\
Please see Appendix A\null. We will be there soon.
\end{document}
文件類別設定
在 LaTeX 中,文件類別設定可以讓我們靈活調整文件的外觀和格式。不同的文件類別適用於不同類型的文件,例如 article、report 和 book 是最常用的三種標準文件類別。
LaTeX 在文件開頭都會使用\documentclass
指令來指定文件類別和選項,例如:
\documentclass[12pt, a4paper, twoside]{article}
這段指令設置了文件字體大小為 12pt,紙張大小為 A4,並啟用了雙面列印模式。當然類別與其他設定參數不只這三種,也包含 letter、landscape、standalone 等,但目前我們只會用到上述三種類別,如果讀者對 LaTeX 文件類別有興趣,可以參考LaTeX documentclass options illustrated。
關於縮排
在上面的例子中,可以看到文件的第一行縮排了,因為沒有分章節便將換行前的內容做為引言,所以才會縮排。要解決問題有兩種方法:
- 第一行加入
\noindent
來指示 LaTeX 不要縮排。但這種作法仍僅限於下指令之處,其他該縮排的地方仍會縮排。 - 在 preamble 區加入
\parindent=0pt
,表示讓全文的縮排為0pt,當然這就表示全文都不要縮排了。
但是!如果你的文件需要每一段都要縮排(例如報告),那麼上面的方法就不是那麼適用。所以還是要依照需求進行調整。2
文章的身分證:標題頁資訊
標題頁是整個文件的精華,或可以說是這份文件的「身分證」。因爲裡面記載了許多關於這份文件的資訊,如標題就是這篇文章的名字,作者則是誰把這篇文章生出來的,而日期則可以視為這份文件的生日,或是第一次說出 “Hello, World!” 的時間。
標題頁(title page)在 report 類別中是指內頁的第一頁,在 LaTeX 的標準格式裡,他包括了標題、作者、日期與感謝詞。我們先來看一下底下的例子:
\documentclass{report}
\title{Report File}
\author{Noname\thanks{Thanks to the readers.}}
\date{\today}
\begin{document}
This is the first sentence in my \LaTeX\ file.
\chapter{First Chapter}
\section{Section}
...
\end{document}
編譯之後如果你發現這份文件根本沒有標題頁,那麼你發現了端倪!因為在加入標題頁資訊後,必須在\begin{document}
與\end{document}
之間加入\maketitle
,才能將剛剛的資訊在文件中顯示。
\documentclass{report}
\title{Report File}
\author{Noname\thanks{Thanks to the readers.}}
\date{\today}
\begin{document}
\maketitle
This is the first sentence in my \LaTeX\ file.
\chapter{First Chapter}
\section{Section}
...
\end{document}
加入章節標題
在 LaTeX 中加入章節標題是一個非常簡單、方便且直觀的操作,無需手動調整字體大小,只需使用適當的指令即可。3在使用 report 類別的文件中,可以輕鬆地添加章節標題,例如 \chapter{}
用於新增章節標題,而 \section{}
和 \subsection{}
則分別用於添加小節和次小節標題。LaTeX 預設使用阿拉伯數字來標示章節編號,若不想顯示數字編號,可以在指令名稱後面加上星號(*
),例如 \chapter*{}
或 \section*{}
。這樣,LaTeX 會忽略數字編號,允許使用者自行輸入標題內容。
\documentclass{report}
\begin{document}
\chapter{Introduction}
\section{Background Theories}
\subsection{Purpose}
\chapter*{Acknowledgements}
\end{document}
在 LaTeX 的文稿裡頭,章節標題的形成都是由同樣的指令來控制的,這樣有一個好處,臨時插入章節標題及其內文時,我們不必去理會標題編號及目錄的問題,也不必去理會要用什麼字型、及字型大小要多大,LaTeX 會自動計算處理,字型大小也會和內文使用的字型大小互相配合調整,使用者就專心在內文構思、寫作即可。以下由列表來瞭解整個章節結構:
深度編號 | 指令 | 作用及注意事項 |
---|---|---|
-1 | part{} | 部 |
0 | chapter{} | 章,在 article 沒有章 |
1 | section{} | 節 |
2 | subsection{} | 小節 |
3 | subsubsection{} | 次小節 |
4 | paragraph{} | 段落 |
5 | subparagraph{} | 次段落 |
加入摘要
如果要加入的話,可使用 abstract 環境,即
\documentclass{report}
\title{Report File}
\author{Noname\thanks{Thanks to the readers.}}
\date{\today}
\begin{document}
\maketitle
\begin{abstract}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent varius neque vel commodo aliquet. Integer ornare hendrerit ligula et ultricies. In sed viverra enim, non porttitor lectus. Nulla sed nunc euismod, pretium massa et, ultricies sem. Nulla nibh sem, sodales sit amet aliquet a, mollis non elit. Pellentesque nunc nisi, volutpat at leo eu, aliquam faucibus sem. Donec auctor euismod suscipit. Curabitur sed nibh egestas, venenatis nibh sit amet, sollicitudin sapien. Aenean pharetra tincidunt justo eu interdum. Curabitur nisi enim, laoreet non dolor eget, posuere venenatis massa. Pellentesque nec urna dui. Nam ac commodo ante. Proin a nulla pellentesque, auctor.
\end{abstract}
\chapter{Introduction}
\section{Background Theories}
\subsection{Purpose}
\chapter*{Acknowledgements}
\end{document}
在這個環境中的文章,左右會縮排。要注意的是,只有 article
與 report
類別才有 abstract,book 類別不能使用這個環境。report
類別的摘要自成一頁,不編頁碼,且不會編入目錄中,這和一般的論文格式可能會不一樣,使用時請注意。article
類別則仍然是和本文相連的,會出現在文章標題之後。
加入註腳
LaTeX 的註腳有兩種方式,一種是註腳(footnote),一種是邊註(marginal note)。通常 LaTeX 的腳註預設是由阿拉伯數字在編號,置於頁底部。在沒有部(part)的情形下,report/book 類別,編號每章會從頭起算,article 類別則會連續,而且會使用footnotesize
的字體印出。邊註則不編號,字體是正常大小。
腳註加入方式只要在要加入腳註的文字後加上\footnote{你的註腳}
即可。由於邊註加入方式涉及套件、版面邊界設定等,因此在本篇文章先略過不談。
\documentclass{report}
\title{Report File}
\author{Noname\thanks{Thanks to the readers.}}
\date{\today}
\begin{document}
\maketitle
\begin{abstract}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent varius neque vel commodo aliquet. Integer ornare hendrerit ligula et ultricies. In sed viverra enim, non porttitor lectus. Nulla sed nunc euismod, pretium massa et, ultricies sem. Nulla nibh sem, sodales sit amet aliquet a, mollis non elit. Pellentesque nunc nisi, volutpat at leo eu, aliquam faucibus sem. Donec auctor euismod suscipit. Curabitur sed nibh egestas, venenatis nibh sit amet, sollicitudin sapien. Aenean pharetra tincidunt justo eu interdum. Curabitur nisi enim, laoreet non dolor eget, posuere venenatis massa. Pellentesque nec urna dui. Nam ac commodo ante. Proin a nulla pellentesque, auctor.
\end{abstract}
\chapter{Introduction}
Proin sed lorem sed est malesuada dictum. Quisque lorem tellus, tincidunt accumsan auctor et, porttitor eu sapien. Sed dapibus arcu quis diam laoreet ullamcorper. Nam commodo ligula diam, a tempus mauris aliquet quis. Morbi in ante imperdiet, volutpat ligula in, pretium nunc. Mauris ante neque, interdum sed tincidunt quis, efficitur a lacus. Maecenas pharetra sem sit amet erat laoreet lobortis. Maecenas luctus quis purus quis pellentesque. Vestibulum tempor ut massa vel consectetur. Phasellus porta vestibulum diam id euismod. Maecenas et orci odio. Pellentesque feugiat dignissim turpis sed imperdiet. In rhoncus odio enim, in elementum odio varius at. Nulla accumsan justo ligula, ut convallis libero convallis eu. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
\section{Background Theories}
Vivamus ut consequat nisl. Curabitur ornare commodo tellus, et iaculis erat mollis quis. Donec in iaculis eros. Suspendisse porta sagittis orci, a varius turpis tempor sed. Phasellus aliquam ex a purus placerat sagittis. Donec a lectus eleifend, mattis augue vitae, accumsan nisl. Sed vestibulum placerat mi et lacinia. Pellentesque nec libero vehicula tortor facilisis lobortis. Sed pellentesque, nunc elementum condimentum iaculis, sem nulla gravida eros, id ullamcorper dolor ante id erat. Pellentesque semper metus vel aliquam dictum.
\subsection{Purpose}
Sed sagittis quis est in mollis. Aliquam tortor nunc, condimentum eget pulvinar eget, porta aliquam arcu. Donec eu ligula libero. Maecenas sagittis nunc non purus finibus accumsan. Maecenas a est aliquet, ornare erat sed, convallis lectus. Pellentesque ultricies enim eu metus sagittis, quis mattis purus tempus. Etiam fringilla, est et euismod tempor, mi est imperdiet elit, in volutpat ante dui in ligula. Nulla et ornare turpis, eget condimentum dolor. Praesent sit amet enim ultricies, pellentesque nibh non, facilisis elit. Aenean nisi ligula, pulvinar eu finibus sit amet, pulvinar hendrerit erat. Maecenas vitae varius dui.\footnote{Curabitur vel tortor a lorem commodo volutpat eget nec dui. In consectetur nibh odio, non sagittis ligula consectetur sed. Donec dignissim placerat ex, vel hendrerit risus maximus id. }
\chapter\*{Acknowledgements}
Cras elementum dui a nulla volutpat, quis accumsan massa euismod. Mauris laoreet, velit et vehicula auctor, diam magna viverra nulla, malesuada blandit sapien turpis id ante. Etiam a risus suscipit, mattis lacus viverra, imperdiet mauris. Morbi et velit non turpis ornare cursus ac sed sapien. Pellentesque molestie ligula in pulvinar vehicula. Donec et consectetur ex, ac efficitur dui. Pellentesque eget nulla mollis, auctor felis a, pulvinar leo. Maecenas eget quam mauris. Vestibulum nec ullamcorper leo, ut commodo elit. Curabitur a diam semper, tempor quam nec, vulputate nulla. Ut laoreet justo eget volutpat gravida. Vivamus vel dui non sapien convallis volutpat eget eu nisl. In hac habitasse platea dictumst. Curabitur at pellentesque augue, a commodo nisl. Donec tempus, lectus et facilisis elementum, felis odio luctus justo, a laoreet metus lacus eu risus.
\end{document}
使用
report
類別的原因很間單:因為 article 類別文稿沒有 chapter,無法全面講解章節深度,因此選用report
。 ↩︎個人觀點:筆者很不喜歡首段縮排,而是喜歡首段以外的其他段落縮排帶來的不對稱感,但是如果教授、上司有特別要求,那麼按照規定走會是比較保險的方法。 ↩︎
Word 則是要一個個調整,還要進行一些特殊的設定,而且有可能會因為設定錯誤而跑版。如果你不知道如何設定 Word 的標題的話,可以參考Word 排版技巧:樣式、階層、目錄、頁首頁尾、段落。 ↩︎