用 LaTeX 編排文章只有幾個法則,但已夠用來編排複雜的文章。 LaTeX也儘可能簡化了編譯的過程。
實際上 LaTeX 是一種文件標示語言,它把內文邏輯和輸出形式分開來處理。例如,用TeX 制定,每一節標題的格式,為預留36 點的垂直距離,然後印上粗體兩倍大的標題和頁數,隔兩個字元的垂直距離,再繼續內文的輸入。相對的,LaTeX 使用\section{}
命令, 它會做上述的所有的工作。如果你要改變它的格式,可以修改\section{}
來代替更改文件內容。這將會使得重新格式超過數十頁的文件時,會省下很多時間。
所有 LaTeX 文件包含三個部份 : 前文 ,內文和 結尾, 這些都是 TeX 專家常用的語法。
在前文部份,最少要指定文件的型態 --- 文件的型態 --- 和文件內文開始的標誌,就像:
\documentclass{article} \begin{document}文件的結尾通常很簡單,除了某些特殊例子,它只有:
\end{document}其中
\begin{document}
和 \end{document}
必須成對使用,在 LaTeX 中,這就叫做環境,所有輸入文章,都須要在環境中,而且許多命令,只有在呼叫它們的環境中,才有作用,然而,在使用 LaTeX, 一定要有 document
的環境,即唯一須要的環境。( 除了letter
型態,須要宣告\begin{letter}
和 \end{letter}
,參考section
Letters信件 。 ) 還有許多格式的環境,在底下會再提到。
文件格式也叫做參數,內文內定字高度為 10 點,若要改變預定格式,可以更改參數,如:
\documentclass[12pt]{article}字高度改為 12 點。 article,格式也做了一些必要的調整。
下列有一些常用的標準格式。report 格式是和article格式相似的,是報告格式預先設定一個主題名稱,每一節由新的一頁開始。letter 格式包含一些特別的 addresses , salutations 和 closings 定義,底下會提到一些。
你可以用\usepackage{}
的命令,來加入包裝好的 LaTeX 內文碼,一般叫做程式集 ,
\usepackage{fancyhdr}上述命令,就是加入在
TEXINPUTS
子目錄中的風格檔,fancyhdr.sty
,通常在裝好TeX 系統後,就會有許多類似的風格檔。
\documentclass{article} \usepackage{fancyhdr} \begin{document}
注意\usepackage{}
必須在\begin{document}
之前, 即文件的前文。
其中fancyhdr.sty
會增加\pagestyle{}
的命令,使得用者可依須要,自己設計 headers 和 footers , 大多數 LaTeX 提供下列headers 和 footers 的標準格式:
\pagestyle{plain} % 內定格式檔 - 頁數在底部中間 \pagestyle{empty} % 沒有 headers 和 footers \pagestyle{headings} % 節數和頁數在每頁頂端 \pagestyle{myheadings} % 在每頁頂端列印你要印的東百分比符號右邊是命令的註解。
\pagestyle{}
的命令,直到編譯下頁時才作用,因此要改變正在輸入的地方的 headers 和 footers 可使用:
\thispagestyle{the_pagestyle}
一般LaTeX 會內定字元的型態,但是它也允許輸出別的型態,例如粗體字、斜體字等 ,也可以畫底線,詳見 LaTeX 擴充程式集與其他資源
有幾種方法表示內文要強調的部分,最常用的是 \em
命令,在它的範圍裡面所有的本文,都用強調體字型編排,例如:
This word will be {\em emphasized.}如果你已經用調體字型編排某個段落,可以用
\/
取消用調體字型的命令,是用,一個反斜線和一個向前的斜線。例如:
This example {\em will\/} print correctly. This example will {\em not} print correctly.另外,稍為缺少可攜帶性,但還可以接受的是,
\it
,
\bf
,和\tt
命令,在命令的範圍裡面,分別使用意大利斜體字,粗體字和打字機字體,例如:.
{\tt This text will be printed monospaced,} {\it this text will be italic,} and {\bf this text will be bold\dots} all in one paragraph.命令
\dots
連續列印不分開的三個句點。
LaTeX 最近的版本,也是你有的版本,後用的指定命令,會代替前面的命令。
This is {\it not {\bf bold italic!}}TeTeX 用意大利斜體字編排本文,直到它遇到那
\bf
命令,才改為粗體字。
為了要到達這目的,選擇字型的 NFSS 方案需要考慮每種字體的三個參數: shape , series 和 family 。如果需要替換另外的字型, LaTeX先會警告你。你也可以先宣告使用下列各項字型:
You can specify the following font shapes:
\textup{text} % 正常的形狀 ( 預設值 ) \textit{text} % 意大利斜體字 \textsl{text} % 斜體字 \textsc{text} % small caps大部分的字型都可使用下列兩種 series :
\textmd{text} % 中等 series ( 預設值 ) \textbf{text} % 黑體字 series.有三個families的類型可用
\textrm{text} % 羅馬體 ( 預設值 ) \textsf{text} % sans 字體 \texttt{text} % 打字機字體 ( 類似 Courier )你能使用這些參數設定字型,以組成想要的效果。
\texttt{\textit{This example likely will result in a font substitution, because many fonts don't include a typewriter italic typeface.}}TeX系統內定使用點距陣的字型,即 Computer Modern,其他Postscript 格式的 Type 1 字型也常用到。使用的方法參考 使用 PostScript 字型。
也有許多特別的字元可以使用,下列是少許例子,自己用印表機試試。
\'{o} \`{e} \^{o} \"{u} \={o} \c{c} `? `! \copyright \pounds \dag最後,在 TeX 和 LaTeX 也可以使用 meta 和 ESC 的字元可以使用,只要與一個反斜線一起使用就可以了。例如:
# $ % & _ { }
LaTeX 提供許多非英文的字母,像希臘字母和斯拉夫字母,其他參考會詳述這些。
TeX 或 LaTeX 文件裡的邊緣,不可以直接的變更,往往它跟你正在試著調整的內文有關係,放置變更命令的位置也是很重要的。
對於控制 LaTeX 文件寬度的命令,可使用\evensidemargin
和\oddsidemargin
,他們分別會改變偶數頁的左側和奇數頁的右側。舉例來說,
\evensidemargin=1in \oddsidemargin=1in使得正常離邊緣一吋的偶數頁的左側和奇數頁的右側, 額外 再增加一吋到兩吋, 而且這些命令會到影響全部的文件,不會被其他局部的命令影響到,所以
詩文體
和 列表
,很適合使用這些命令。
下面是本文作者寫的一組變更邊緣的巨集指令,他們和上面提到的命令,有不同的效果,因為他們使用 plain TeX 命令,不保證在 LaTeX 文件中會有效,但是你還是可以把它放在開始想改變邊緣的位置。
%% margins.sty -- v. 0.1 by Robert Kiesling %% 這個巨集指令可以自由地被散佈及使用 %% %% 一些基本的 plain TeX 變更邊緣的命令. 長度單位為吋 %% %% \leftmargin{1} %% 文件左邊離邊緣一吋 %% \leftindent{1} %% 段落左邊離邊緣一吋 %% \rightindent{1} %% 段落右邊離邊緣一吋 %% \llength{3} %% 下列各行的長度設定為 3 吋 %% \message{Margins macros...} \def\lmargin#1{\hoffset = #1 in} \def\lindent#1{\leftskip = #1 in} \def\rindent#1{\rightskip = #1 in} \def\llength#1{\hsize = #1 in} %% %% (End of margins macros.}把這個
margins.sty
放在$TEXINPUTS
的目錄內。命令的作用如同注解,在一份文件前文中使用下列命令,就可以使用它們了:
\usepackage{margins}
由於 LaTeX 會自己調整每行右邊的邊緣,( 使每一行的尾端都對齊,但是有時會看起來怪怪的 ) ,可以使用下列命令取消這內定的功能:
\raggedright
設定行距也有些複雜。
baselineskip 的量是設定文章的行距,通常都會給一個正的數,舉例來說:
\baselineskip=24pt或使用較好的:
\setlength{\baselineskip}{24pt}二者之間的差異是, setlength 會優先讓其他會影響文章編排的命令執行。
使用 baselineskip 的問題是,它也會影響到區段的標題,注腳和相似的命令。如果使用 baselineskip ,必須隨時注意它對你正在格式的文章的影響,有些 LaTeX 的巨集,像setspace.sty,
,對在這些環境中的使用將會幫助,請參考:
LaTeX 擴充程式集與其他資源.
LaTeX 提供標準化的格式提供給文件輸入,諸如目錄、引用段落、註腳及其他文件的格式供人使用,下列包含一些常用的標準格式。
如前面所提到, 文章
格式和 報告
格式是相似的。主要的不同是報告格式,預先設定一個主題名稱,每一節由新的一頁開始。雖然這樣,兩者大至上是相似的。,預先設定一個主題名稱,每一節由新的一頁開始。
舉例來說,為了要製造主題名稱,摘要和每一行,預先在前面輸入:
\title{The Breeding Habits of Cacti} \author{John Q. Public} \abstract{Description of how common desert cacti search for appropriate watering holes to perform their breeding rituals.}然後,這命令
\maketitle會使得用報告格式的文章,在開始的地方或第一頁的頂端,產生主題名稱和摘要。
其他段落的命令定義如下:
\section \subsection \subsubsection這些命令將會在文件中,產生標準並已編號的小節,若不讓每小節自動編號,則使用:
\section* \subsection* \subsubsection*以此類推。
LaTeX 提供許多表現輸出文件的環境供人使用,你能用引述
環境,包括要引述的部分。
\begin{quotation} Start of paragraph to be quoted... ... end of paragraph. \end{quotation}比較短的引述,可以使用
引述
環境。
至於要格式化詩文,則用 詩文體
環境。
\begin{verse} Because I could not stop for death\\ He kindly stopped for me \end{verse}可以使用兩個反斜線(\\),達到跳行的目的,否則LaTeX 會以這詩體的格式,繼續編排直到這一行結束。
至於列表有幾種方式,用list
環境的列舉格式,
\begin{list} \item This is the first item of the list. \item This is the second item of the list... \item ... and so on. \end{list}
用enumerate
環境標示號碼順序的:
A numbered list uses the enumerate
environment:
\begin{enumerate} \item Item No. 1. \item Item No. 2. \item \dots \end{enumerate}
用description
環境描述主題的:
\begin{description} \item{Oven} Dirty, needs new burner. \item{Refrigerator} Dirty. Sorry. \item{Sink and drainboard} Stained, drippy, cold water faucet. \end{description}
這信件
格式特別為商業信件制定一些特殊的用法。
這信件
格式有一點爭論,即收信人的住址。 address
的命令,必須在文件前文中出現,而定義寄件人名字,signature
的命令,則在結束之後出現。.
一個使用 LaTeX 信件格式的簡單例子就像:
\documentclass[12pt]{letter} \signature{John Q. Public} \address{123 Main St.\\Los Angeles, CA. 96005\\Tel: 123/456-7890} \begin{document} \begin{letter}{ACME Brick Co.\\100 Ash St.\\San Diego, CA 96403} \opening{Dear Sir/Madam:} With regard to one of your bricks that I found on my living room carpet surrounded by shards of my broken front window... (Remainder of the body of the letter.) \closing{Sincerely,} \end{letter} \end{document}注意住址中兩個反斜線的地方,就是跳行的地方。