安裝
- Texlive 2019
- TeX studio
- 請自行百度教程進行安裝
空白距離
- tex源碼中的空白距離無論多大都會等同於一個空白字符,每行開始的空白字符將會忽略,而單個的回車符被視爲一個空格。
- 空行結束段落,多個空行的作用和一個空行作用相同。
特殊字符
以下這些字符爲LATEX的保留字符,他們在latex中有特定的用處,如想得到這些字符,需在前面加反斜線\
#
$
%
^
{
}
_
\
~
- 需要注意:反斜線不能前面加反斜線來得到,相反\\是一個用來斷行的命令。
latex命令
大小寫敏感,且有以下兩種格式:
- 以一反斜線\開始,加上只包含字母字符命令名組成。命令名後的空格符、數字或其他非字母字符標準該命令的結束。
- 由一反斜線和一特殊字符組成。
如果希望在命令後面得到空格,則可以在命令後面加{}和你所需要的空白距離命令,{}將阻止latex吞噬掉命令後面的空格。
- \textsl{} 斜體
- \today 輸出今天日期
- \newline 換行
註釋
單行註釋符號 :%
如果需要較長的註釋,使用verbatim宏集所提供的comment環境,需要在源文件的導言區加上命令\usepachage{verbatim}
\usepachage{verbatim}
\begin{comment}
This is comment
\end{comment}
源文件結構
latex需要處理的源文件遵從一定的結構,每個latex文檔必須以如下命令開始
\documentclass{...}
這個命令指定了你所寫文檔的類別。
在此之後,你可以加入控制文檔式命令,或者使用如下的命令來調入一些宏集,進而爲latex系統增添新的功能
\usepackage{...}
此塊區域稱爲導言區。(documentclass和begin之間)
當完成所有設置後,你可利用如下的命令開始你的文檔。
\begin{document}
開始排版文本以及使用一些latex命令。在文檔的最後鍵入下面的命令來告訴latex你的文檔到此結束。
\end{document}
文檔類
\documentclass[options]{class}
- 文檔的屬性通過options調節,不同的選項用逗號隔開
- 文檔的類型通過class調節
class選項
class | 意義 |
---|---|
article | 排版科技期刊、短報告、程序文檔、邀請函等。 |
report | 排版多章節的長報告、短篇的書籍、博士論文等。 |
book | 排版書籍。 |
slides | 排版幻燈片。其中使用了較大的sans serif 字體。也可以考慮使用FoilTEX來得到相同的效果。 |
options選項
options | 意義 |
---|---|
10pt, 11pt, 12pt | 設置文檔所使用的字體的大小。如果沒有聲明任何選項,缺省將使用10pt 字體。 |
a4paper, letterpaper, . . . | 定義紙張的大小,缺省的設置爲letterpaper。此外,還可以使用a5paper,b5paper,executivepaper 和legalpaper。 |
fleqn | 設置該選項將使數學公式左對齊,而不是中間對齊。 |
leqno | 設置該選項將使數學公式的編號防置於左側。 |
titlepage, notitlepage | 指定是否在文檔標題(document title)後開始一新頁。article 文檔類缺省不開始新頁,而book 文檔類則相反。 |
onecolumn, twocolumn | 指定LATEX 以單列(one column)或雙列(two column)方式排版文檔。 |
twoside, oneside | 指定LATEX 排版的文檔爲雙面或單面格式。article 和report 缺省使用單面格式,而book 則缺省使用雙面格式。需要注意的是該選項僅作用於文檔的式樣。twoside選項不會通知你的打印機讓以得到雙面的打印輸出。 |
openright, openany | 此選項決定新的章是僅僅在右邊頁(奇數頁)還是在下一可用頁開始。該選項對article 文檔類不起作用,因爲該類中並沒有定義“章”(Chapter)。report 類中新的一章開始於下一可用頁,而book 類中新的一章總是開始於右邊頁。 |
\documentclass[12pt, twoside, a4paper]{article}
這條命令指定LATEX 使用論文版式,12磅大小的字體來排班此文檔,並且得到適合打印在A4 紙上的輸出結果
宏包
當你進行排版時,你將會發現很多時候基本的latex不能解決你的問題,如果你想插入圖形,彩色文本或源代碼文件,你需要使用宏包來增強latex。
\usepachage[options]{package}
- 這裏package是宏包的名稱
- options是用來出發宏包中的特殊功能的關鍵詞
一些宏包
名稱 | 作用 |
---|---|
normalfontdoc | 排版LATEX 程序文檔。詳見doc.dtxa 和The LATEX Companion [3]。 |
exscale | 提供了可縮放版本的數學字體擴展。詳見ltexscale.dtx。 |
normalfontfontenc | 聲明LATEX 所使用的字體編碼(font encoding)。詳見ltoutenc.dtx。 |
ifthen | 提供如下形式的命令:‘if. . . then do. . . otherwise do. . . .’詳見ifthen.dtx 和The LATEX Companion [3]。 |
latexsym | 調入此宏包可在文檔中使用LATEX 符號。詳見latexsym.dtx 和The LATEX Companion [3]。 |
makeidx | 提供了生成索引的命令。詳見第4.3 節和The LATEXCompanion [3]。 |
syntonly | 僅僅處理文檔,但並不對其進行排版。 |
inputenc | 允許聲明ASCII、ISO Latin-1、ISO Latin-2、437/850IBM 編碼頁、Apple Macintosh、Next、ANSI-Windows 或自定義的輸入編碼。詳見inputenc.dtx。 |
各類letex文件
不同擴展名的文件不同,下表詳細列出。
不同後綴文件
名稱 | 作用 |
---|---|
.tex | LATEX 或TEX 源文件。可以用latex 處理。 |
.sty | LATEX 宏包文件。可使用命令\usepackage 將其加載到你的LATEX 文件中。 |
.dtx | 文檔化TEX 文件。這也是LATEX宏包發佈的主要格式。通過處理一個.dtx文件就可以得到該LATEX 宏包中所包括的宏代碼文檔。 |
.ins | 爲相應的.dtx 文件的安裝文件。如果你在網絡上下載了一LATEX 宏包,你通常會發現會有一個.dtx 和一個.ins 文件。使用LATEX 對.ins文件進行處理,可以從.dtx 文件中提取出宏包。當你運行LATEX 處理你的源文件時,會得到下列文件: |
.dvi | 與設備無關文件。這是LATEX 編譯運行的主要結果。你可以使用DVI預覽器瀏覽其內容,或者使用像dvips這樣的應用程序輸出到打印機。 |
.log | 記錄了上次編譯運行時的詳細信息。 |
.toc | 存儲了所有章節標題。該文件將在下次編譯運行時被讀入並生成目錄。 |
.lof | 類似.toc 文件,可生成圖形目錄。 |
.lot | 類似.toc 文件,可生成表格目錄。 |
.aux | 另一個用來向下次編譯運行傳遞信息的輔助文件。除了其它信息外,.aux 文件通常包含交叉引用信息。 |
.idx | 如果你的文件中包含有索引,LATEX 使用此文件存儲所有的索引詞條。此文件需要使用makeindex 處理。 |
.ind | 經過處理後的.idx 文件。可在下次編譯運行時加入到你的文檔中。 |
.ilg | 運行makeindex 時生成的記錄文件。 |
頁面樣式
latex支持三種預定的頁眉,頁腳(header/footer)格式,稱爲頁面式樣(page styles).
\pagestyle{style}
- style參數定義了所使用的頁面式樣
參數名稱 | 含義 |
---|---|
plain | 頁眉爲空,頁腳由居中的的頁碼組成。這默認的頁面式樣。 |
headings | 頁眉由當前的章節標題和頁碼組成,腳爲空。(這是本文檔所使用的頁面式樣) |
empty | 設置頁眉、頁腳均爲空。 |
可以使用下面的命令改變當前頁的頁面式樣。
\thispagestyle{style}
大型文檔
處理大型文檔時,最好將源文件分成幾個部分。latex有兩條命令來處理這種情況。
\include{filename}
- 在文檔的正文中使用此命令可將文件名爲filename.tex的內容包括進來。
\includeonly{filename,filename,...}
- 這條命令可用在文檔的引言區
- 在所有的include命令中,只有includeonly命令參數中列出的文件纔會被執行。
- 參數中,文件名和逗號之間不能有空格。
使用syntonly 宏包可以讓LATEX快速的檢查你的文檔:LATEX瀏覽你的文檔,僅僅檢查語法和所使用的命令是否正確,會產生DVI輸出。在這種模式下,LATEX 運行的非常快,可以節省可觀的時間。使用方法非常簡單:
\usepackage{syntonly}
\syntaxonly