LaTeX基本概念

LaTeX基本概念

OLENCER. Infinity

$\LaTeX$


$\LaTeX$读作“Lah-tech”或者”Lay-tech”
$\LaTeX2\epsilon$是$\LaTeX$的当前版本,意思是超出了第二版,但还远未到达第三版。

$\LaTeX$命令和代码结构


$\LaTeX$中命令以反斜线\开头,为以下两种形式之一:

  • 反斜线和后面的一串字母,如\LaTeX。它们以任意非字母符号(空格、数字、标点等)为
    界限。

  • 反斜线和后面的单个非字母符号,如 \$。

  • 要注意$\LaTeX$命令是对大小写敏感的。

  • $\LaTeX$命令忽略其后的所有连续空格。如果要人为引入空格,需要在命令后面加一对花括号阻止其忽略空格, 如 \LaTeX{}。

    另外也可以在命令后面紧跟一个 \␣ 命令(反斜线加空格),代表插入一个间距。

  • 以单个字符作为命令的参数时,可以不加括号。如,在数学环境下,\frac12 和 \frac{1}{2} 的效果是一样的。

  • 一些$\LaTeX$命令可以接收一些参数,参数的内容会影响命令的效果。$\LaTeX$的参数分为可选参数和必选参数。

    可选参数以方括号 [ 和 ] 包裹;必选参数一般以花括号 { 和 } 包裹。还有些命令可以带一个星号 * ,带星号和不带星号的命令效果有一定差异。初次接触这些概念时,可以粗略地把星号看作一种特殊的可选参数。

1
2
3
4
5
6
7
8
9
\documentclass{...} % ...为某文档类
% 导言区
\begin{document}
% 正文内容
\end{document}
% 此后内容会被忽略

% LaTeX源代码以一个\documentclass命令作为开头,它指定了文档使用的文档类。document环境当中的内容是文档正文。
% 在\documentclass和\begin{document} 之间的位置称为导言区。在导言区中常会使用\usepackage 命令调用宏包,还会进行文档的全局设置。

$\LaTeX$中还包括环境,用以令一些效果在局部生效,或是生成特殊的文档元素。

$\LaTeX$环境的用法为一对命令 \begin 和 \end 。

1
2
3
4
5
6
7
8
9
\begin{⟨environment name⟩}[⟨optional arguments⟩]{⟨mandatory arguments⟩}

\end{⟨environment name⟩}

% 其中⟨environment name⟩ 为环境名,\begin和\end中填写的环境名应当一致。类似命令,{⟨mandatory arguments⟩}和[⟨optional arguments⟩]为环境所需的必选和可选参数。LaTeX环境可能需要一个或多个必选/可选参数,也可能完全不需要参数。部分环境允许嵌套使用。

% 有些命令(如\bfseries)会对其后所有内容产生作用。若要限制其作用范围,则需要使用分组。LaTeX使用一对花括号{ 和} 作为分组,在分组中使用的命令被限制在分组内,不会影响到分组外的内容。上文提到的LaTeX环境隐含了一个分组,在环境中的命令被包裹在分组内。

% 个别命令在分组内仍然会产生全局作用。

文档类


文档类规定了$\LaTeX$源代码所要生成的文档性质——普通文档、书籍、演示文稿、个人简历等等。
$\LaTeX$源代码开头须用 \document 指定文档类:

1
2
3
4
\document[\<options>]{\<class-name>}

% 其中⟨class-name⟩ 为文档类的名称。
% 可选参数⟨options⟩ 为文档类指定选项,以全局地规定一些排版的参数,如字号、纸张大小。

$\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
2
% 一次性调用三个排版表格常用的宏包
\usepackage{tabularx, makecell, multirow}

宏包(包括前面所说的文档类)可能定义了许多命令和环境,或者修改了$\LaTeX$已有的命令和环境。

它们的用法说明记在相应宏包和文档类的帮助文档。

在Windows 命令提示符或者Linux 终端下输入命令可查阅相应文档:

1
2
texdoc ⟨pkg-name⟩
% 其中⟨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
2
\include{⟨filename⟩}
% ⟨filename⟩为文件名(不带.tex 扩展名)如果和要编译的主文件不在一个目录中,则要加上相对或绝对路径。

值得注意的是 \include 在读入 ⟨filename⟩ 之前会另起一页。

有的时候我们并不需要这样,而是用 \input 命令,它纯粹是把文件里的内容插入。

当导言区内容较多时,常常将其单独放置在一个.tex 文件中,再用 \input 命令插入。复杂的图、表、代码等也会用类似的手段处理:

1
\input{⟨filename⟩}

$\LaTeX$ 还提供了一个 \includeonly 命令来组织文件,用于导言区,指定只载入某些文件。
导言区使用了 \includeonly 后,正文中不在其列表范围的 \include 命令不会起效:

1
\includeonly{⟨filename1⟩,⟨filename2⟩,…}

最后介绍一个实用的工具宏包syntonly。加载这个宏包后,在导言区使用 \syntaxonly 命令,可令$\LaTeX$编译后不生成DVI或者PDF 文档,只排查错误,编译速度会快不少:

1
2
3
4
\usepackage{syntonly}
\syntaxonly

% 如果想生成文档,则用% 注释掉\syntaxonly 命令即可。

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.
Comments