LaTeX基本概念
$\LaTeX$
$\LaTeX$读作“Lah-tech”或者”Lay-tech”
$\LaTeX2\epsilon$是$\LaTeX$的当前版本,意思是超出了第二版,但还远未到达第三版。
$\LaTeX$命令和代码结构
$\LaTeX$中命令以反斜线\开头,为以下两种形式之一:
反斜线和后面的一串字母,如\LaTeX。它们以任意非字母符号(空格、数字、标点等)为
界限。反斜线和后面的单个非字母符号,如 \$。
要注意$\LaTeX$命令是对大小写敏感的。
$\LaTeX$命令忽略其后的所有连续空格。如果要人为引入空格,需要在命令后面加一对花括号阻止其忽略空格, 如 \LaTeX{}。
另外也可以在命令后面紧跟一个 \␣ 命令(反斜线加空格),代表插入一个间距。
以单个字符作为命令的参数时,可以不加括号。如,在数学环境下,\frac12 和 \frac{1}{2} 的效果是一样的。
一些$\LaTeX$命令可以接收一些参数,参数的内容会影响命令的效果。$\LaTeX$的参数分为可选参数和必选参数。
可选参数以方括号 [ 和 ] 包裹;必选参数一般以花括号 { 和 } 包裹。还有些命令可以带一个星号 * ,带星号和不带星号的命令效果有一定差异。初次接触这些概念时,可以粗略地把星号看作一种特殊的可选参数。
1 | \documentclass{...} % ...为某文档类 |
$\LaTeX$中还包括环境,用以令一些效果在局部生效,或是生成特殊的文档元素。
$\LaTeX$环境的用法为一对命令 \begin 和 \end 。
1 | \begin{⟨environment name⟩}[⟨optional arguments⟩]{⟨mandatory arguments⟩} |
文档类
文档类规定了$\LaTeX$源代码所要生成的文档性质——普通文档、书籍、演示文稿、个人简历等等。
$\LaTeX$源代码开头须用 \document 指定文档类:
1 | \document[\<options>]{\<class-name>} |
$\LaTeX$提供的基础文档类
<class-name> | 作用 |
---|---|
article | 文章格式的文档类,广泛用于科技论文、报告、说明文档。 |
report | 长篇报告格式的文档类,具有章节结构,用于综述、长篇论文、简单书籍等。 |
book | 书籍文档类,包含章节结构和前言、正文、后记等结构。 |
(以上习惯称为“标准文档类”) | |
proc | 基于article 文档类的一个简单的学术文档模板。 |
slides | 幻灯格式的文档类,使用无衬线字体。 |
minimal | 一个极其精简的文档类,只设定了纸张大小和基本字号,用作代码测试的最小工作示例(Minimal Working Example)。 |
ctexart | 支持中文排版的文章格式的文档类。 |
ctexrep | 支持中文排版的长篇报告格式的文档类。 |
ctexbook | 支持中文排版的书籍文档类。 |
\document可选参数
<options> | 作用 |
---|---|
10pt, 11pt, 12pt | 指定文档的基本字号。默认为10pt。 |
a4paper, letterpaper | 指定纸张大小。 默认为美式信纸letterpaper(8.5in × 11in,大约相当于21.6cm × 28.0cm)。 可指定选项还包括a5paper,b5paper,executivepaper 和legalpaper。 |
twoside, oneside | 指定单面/双面排版。 双面排版时,奇偶页的页眉页脚、页边距不同。 article和report默认为oneside,book默认为twoside。 |
onecolumn, twocolumn | 指定单栏/双栏排版。 默认为onecolumn。 |
openright, openany | 指定新的一章 \chapter 是在奇数页(右侧)开始,还是直接紧跟着上一页开始。 report默认为openany,book默认为openright。对article 无效。 |
landscape | 指定横向排版。默认为纵向。 |
titlepage, notitlepage | 指定标题命令 \maketitle 是否生成单独的标题页。 article 默认为notitlepage,report和book默认为titlepage。 |
fleqn | 令行间公式左对齐。默认为居中对齐。 |
leqno | 将公式编号放在左边。默认为右边。 |
draft, final | 指定草稿/终稿模式。 草稿模式下,断行不良(溢出)的地方会在行尾添加一个黑色方块;插图、超链接等功能也会受这一组选项影响,默认为final。 |
宏包
在使用$\LaTeX$时,时常需要依赖一些扩展来增强或补充$\LaTeX$的功能,比如排版复杂的表格、插入图片、增加颜色甚至超链接等等。
这些扩展称为宏包。调用宏包的方法非常类似调用文档类的方法:
1 | \usepackage[⟨options⟩]{⟨package-name⟩} |
\usepackage 可以一次性调用多个宏包,在 ⟨package-name⟩ 中用逗号隔开。这种用法一般不要指定选项:
1 | % 一次性调用三个排版表格常用的宏包 |
宏包(包括前面所说的文档类)可能定义了许多命令和环境,或者修改了$\LaTeX$已有的命令和环境。
它们的用法说明记在相应宏包和文档类的帮助文档。
在Windows 命令提示符或者Linux 终端下输入命令可查阅相应文档:
1 | texdoc ⟨pkg-name⟩ |
$\LaTeX$用到的文件一览
后缀名 | 作用 |
---|---|
.sty | LaTeX宏包文件。宏包的名称与文件名一致。 |
.cls | 文档类文件。文档类名称与文件名一致。 |
.bib | BibTeX参考文献数据库文件。 |
.bst | BibTeX用到的参考文献格式模板。 |
.log | 排版引擎生成的日志文件,供排查错误使用。 |
.aux | LaTeX生成的主辅助文件,记录交叉引用、目录、参考文献的引用等。 |
.toc | LaTeX生成的目录记录文件。 |
.lof | LaTeX生成的图片目录记录文件。 |
.lot | LaTeX生成的表格目录记录文件。 |
.bbl | BibTeX生成的参考文献记录文件。 |
.blg | BibTeX生成的日志文件。 |
.idx | LaTeX生成的供makeindex处理的索引记录文件。 |
.ind | makeindex处理.idx生成的用于排版的格式化索引文件。 |
.ilg | makeindex 生成的日志文件。 |
.out | hyperref宏包生成的PDF书签记录文件。 |
文件的组织方式
当编写长篇文档时,例如当编写书籍、毕业论文时,单个源文件会使修改、校对变得十分困难。将源文件分割成若干个文件,例如将每章内容单独写在一个文件中,会大大简化修改和校对的工作。
$\LaTeX$提供了命令 \include 用来在源代码里插入文件:
1 | \include{⟨filename⟩} |
值得注意的是 \include 在读入 ⟨filename⟩ 之前会另起一页。
有的时候我们并不需要这样,而是用 \input 命令,它纯粹是把文件里的内容插入。
当导言区内容较多时,常常将其单独放置在一个.tex 文件中,再用 \input 命令插入。复杂的图、表、代码等也会用类似的手段处理:
1 | \input{⟨filename⟩} |
$\LaTeX$ 还提供了一个 \includeonly 命令来组织文件,用于导言区,指定只载入某些文件。
导言区使用了 \includeonly 后,正文中不在其列表范围的 \include 命令不会起效:
1 | \includeonly{⟨filename1⟩,⟨filename2⟩,…} |
最后介绍一个实用的工具宏包syntonly。加载这个宏包后,在导言区使用 \syntaxonly 命令,可令$\LaTeX$编译后不生成DVI或者PDF 文档,只排查错误,编译速度会快不少:
1 | \usepackage{syntonly} |
COPYRIGHT (c) OLENCER. ALL RIGHTS RESERVED.
- Title: LaTeX基本概念
- Author: OLENCER.
- Created at : 2023-06-28 17:00:00
- Updated at : 2023-07-06 17:02:18
- Link: https://olencer.github.io/LaTeX/latex基本概念/
- License: This work is licensed under CC BY-NC-SA 4.0.