強大的排版工具
強大的排版工具
由高德納(Donald Knuth)在約 1980 年代發明的排版軟體,據說是因為他對當時的電腦排版技術不甚滿意,為了不影響到他的巨著《電腦程式設計藝術》的品質,他決定自行開發一套用於排版的軟體,其中包含了許多當時其他軟體尚未包含或還不成熟的功能,例如數學公式間距的自動調整及美觀的斷行演算法等。
\(\LaTeX{}\)與 Office 系列軟體或其他軟體比起來,當然是各自有各自的優點,但是為什麼許多研究者偏好使用\(\LaTeX{}\)而不是 Microsoft Word 來撰寫論文呢?
一篇文章的實際內容及意義,和其呈現給讀者的形式是互相獨立的。這是使用\(\LaTeX{}\)很重要的原則,使得作者能夠在撰寫內文的同時不必注意文章的外觀。
基礎的\(\LaTeX{}\)允許使用者使用\(\texttt{chapter}\)、\(\texttt{section}\)、\(\texttt{subsection}\)等標示文章不同層級的架構,對於標題等格式的修改不需要一一去內文處改動,只要在前置處理時修改格式即可,有點程式模組化的氣息。
只要 Google 你需要用到的功能,例如圖表、化學結構式、樂譜、棋譜等等,通常都能夠找到已經存在的 package (巨集包),也就是像已經整理好的工具包,或像 C++ 的函式庫。如果想要慢慢瀏覽也可以到 ctan.org 上找找。
直接使用其他人已經微調、定義好的格式能夠省下不少時間,這是\(\LaTeX{}\)的一個很大的優點。
\(\TeX{}\)是一個自由軟體,當然也是一個免費使用的軟體,並且同一份原始碼基本上在不同的作業系統下都會編譯出相同的成品。
對於大多數的作業系統也都已經有對應的編輯器及套件,這使得論文、講義的共同編輯變得更加簡單。
經過前面的一番業配,我們總算來到了今天最重要的部分,也就是 \(\LaTeX{}\) 到底應該怎麼寫和怎麼念(笑)
\(\rightarrow\)
主線(Mean Line)
基線(Base Line)
大寫高度(Cap Height)
\(\rightarrow\)
\(\rightarrow\)
\(\TeX{}\)最大的優點之一
直接在文字方塊中鍵入指令就會顯示在下方,還能下載為圖片!此外也能用上方的按鈕直接選擇你需要的指令或格式,所以其實很多指令都不需要去背。
\sqrt[n]{x}
看你自己的鍵盤啦
因為 codecogs 的第一行會縮排,若你用到了第二行,文字不會和第一行從同一個起點開始。解決這個問題的一個方法就是直接在第一行換行,如此縮排就會消失。
下面是部份的基礎指令介紹。
格式 | 功能 | 外觀 |
---|---|---|
a_b / a_{p,q} | 下標/足標 | |
x^3 / 2^{3+5} | 上標/冪次 | |
a \leq b / x \geq y | 小於等於、大於等於 | |
a \cdot b | 點乘 | |
a \times b | 叉乘 | |
a \div b | 除號 | |
\frac{q}{p} | 分數 |
\[\frac{19}{20} = \frac{1}{2} + \frac{1}{3} + \frac{1}{9} + \frac{1}{180}\]
\[2^a \div 2^b = 2^{a-b}\]
\[6\times 6+25\div 5=36+5=41\]
\[(a+b+c)^2 = a^2 + b^2 + c^2 + 2(a \cdot b + b \cdot c + c \cdot a)\]
格式 | 功能 | 外觀 |
---|---|---|
\pm / \mp | 加減號 | |
\sqrt[n]{x} | 根式 | |
\cdots / \dots | 省略號 | |
\because | 因為 | |
\therefore | 所以 | |
\sum_{k=1}^n | sigma 求和符號 | |
\forall、\exists | 對於所有、存在 | |
a b \ c \\ | 空白、換行 | |
\text{xyz} | 文字模式 |
\[\sum_{k=1}^{n-1}\frac{1}{2^k} = \frac{1}{2} + \frac{1}{4} + \frac{1}{8} + \frac{1}{16} + \dots + \frac{1}{2^{n-1}} = \frac{2^n-1}{2^{n-1}}\]
\[r={\frac {\sum \limits _{i=1}^{n}(X_{i}-{\overline {X}})(Y_{i}-{\overline {Y}})}{{\sqrt {\sum \limits _{i=1}^{n}(X_{i}-{\overline {X}})^{2}}}{\sqrt {\sum \limits _{i=1}^{n}(Y_{i}-{\overline {Y}})^{2}}}}}\]
\[\frac{a+b+c}{3} \geq \sqrt[3]{a \cdot b \cdot c} \]
\[x_{1,2} = \frac{-b \pm \sqrt{b^2-4ac}}{2a}\]
第一次編譯
安裝 \(\TeX{}\) 的編譯程式及IDE大概是學習 \(\LaTeX{}\) 最大的障礙了。今天並不會講如何安裝在本機上,給各位的操作主要會以線上編輯器為主喔!鑒於安裝的困難,今次將會推薦各位使用 Overleaf 作為\(\LaTeX{}\)的第一次體驗。
POKE ME
首先看到的是一份\(\TeX{}\)檔的前置部分,我們稱為preamble區,基本上指 \begin{document} 之前的部分,主要宣告使用的package、文章或指令的格式,而標題、日期、作者也會寫在這部分,上面有提到過的期刊模版主要也是更動這一部分以符合所需的格式。
接著就是本文區了,我們來邊看程式碼邊解釋。
每一個由 \begin{XXX}, \end{XXX}圍起來的區域稱為「環境」,環境內可以設定共通的格式、顏色等。內文則是由 \begin{document}, \end{document}包住,其中:
\usepackage{xeCJK}
\setCJKmainfont[AutoFakeBold=3,AutoFakeSlant=.4]{Noto Sans CJK TC Regular}
\defaultCJKfontfeatures{AutoFakeBold=3,AutoFakeSlant=.4}
\XeTeXlinebreaklocale "zh"
\XeTeXlinebreakskip = 0pt plus 1pt
如此便能在內文、標題、作者、日期等正常使用中文啦!幸好已經有現成的工具讓中文的使用變得很輕鬆,並且還能選擇自己喜歡的字形呢!(前提是Overleaf有支援。P.S. Noto Sans才是真理!!!)
非裝飾類指令
格式 | 說明 |
---|---|
\usepackage[ARGS]{FILE} | 以ARGS的參數引入FILE的package |
\author{NAME} | 將作者設定成NAME |
\title{TITLE} | 將標題設定成TITLE |
\date{\today} | 將日期設定成今天 可以寫成\date{}不顯示日期 |
格式 | 說明 |
---|---|
\maketitle | 顯示標題及日提(在前置區設定顯示什麼,接著打這行才能顯示出來) |
\chapter{TITLE} | 顯示章節名稱為TITLE並編號 |
\section{TITLE} | 顯示小節名稱為TITLE並編號 |
\chapter*{NONUM} | 顯示章節名稱為NONUM |
\section*{NONUM} | 顯示小節名稱為NONUM |
裝飾文字類指令
格式 | 說明 |
---|---|
\textit{TEXT} | 顯示斜體(italic)文字 |
\textbf{TEXT} | 顯示粗體(bold)文字 |
\texttt{TEXT} | 顯示打字機體(typewriter)文字 |
\textsc{TEXT} | 顯示小型大寫字母(small capitals)文字 |
\textsf{TEXT} | 顯示無襯線(sans serif) 文字 |
格式 | 說明 |
---|---|
\tiny | 最小的文字大小 |
\footnotesize | 跟註解一樣大的文字大小 |
\normalsize | 預設的普通文字大小 |
\large | 稍微大一點的文字大小 |
\Huge | 非常大的文字大小 |
在使用顏色之前必須在前置區加入以下指令
\usepackage{xcolor}
表示我們使用 xcolor 這個巨集包裡面定義的顏色指令
接著可以使用和之前類似的指令修改顏色
格式 | 說明 |
---|---|
\textcolor{blue}{TEXT} | 顯示藍色文字 |
\textcolor{red}{TEXT} | 顯示紅色文字 |
\textcolor{magenta}{TEXT} | 顯示洋紅色文字 |
\definecolor{pupil}{HTML}{008000} | 定義pupil為新的文字顏色,其色彩的hex值為008000 |
\definecolor{candidateMaster}{RGB}{80, 0, 80} | 定義candidateMaster為新的文字顏色,其RGB值為(80,0,80) |
有些顏色是已經在裝package時就定義好的,能夠直接使用
格式 | 說明 |
---|---|
\underline{TEXT} | 加了下底線的文字 |
\begin{center} ... \end{center} | 使文字置中 |
\begin{flushleft} ... \end{flushleft} | 使文字靠左對齊 |
\begin{flushright} ... \end{flushright} | 使文字靠右對齊 |
互相嵌套的環境指令們
$ ax+b = 0 $
\begin{math}
ax^2 + bx + c = 0
\end{math}
$$
r=\frac{
\sum \limits _{i=1}^{n}(X_{i}-{\overline {X}})(Y_{i}-{\overline {Y}})
}{
\sqrt {\sum \limits _{i=1}^{n}(X_{i}-{\overline {X}})^{2}}
\sqrt {\sum \limits _{i=1}^{n}(Y_{i}-{\overline {Y}})^{2}}
}
$$
\begin{displaymath}
r=\frac{
\sum \limits _{i=1}^{n}(X_{i}-{\overline {X}})(Y_{i}-{\overline {Y}})
}{
\sqrt {\sum \limits _{i=1}^{n}(X_{i}-{\overline {X}})^{2}}
\sqrt {\sum \limits _{i=1}^{n}(Y_{i}-{\overline {Y}})^{2}}
}
\end{displaymath}
\begin{enumerate}
\item Pen
\item Eraser
\item Paper
\end{enumerate}
\begin{itemize}
\item Jizz
\item I'm EZ
\item mojang duel
\end{itemize}
學弟妹+U > < 記得明天有成果發表ㄛ
如果你們做了\(\LaTeX{}\)我會很驚訝(X
畢竟想要做得更精緻一定得google更多需要的東西
記住 google是你們強大的夥伴owo