LaTeX须知
一份简短的LaTeX介绍
第一章 LaTeX须知
1.1 概述
1.1.1 TeX
TeX是高德纳开发的,以排版数字和数学公式为目的的一个计算机软件。
1.1.1 LaTeX
LaTeX为TeX基础上的一套格式,令作者能够使用预定义的专业格式以叫高质量排版和印刷他们的作品。LaTeX使用TeX程序作为自己的排版引擎。
1.1.3 LaTeX的优缺点
优点:
- 专业的排版输出,产出的文档看上去印刷品一样;
- 方便而强大的数学公式排版能力;
- 绝大多数时候,用户只需专注于一些组织文档结构的基础命令,无需操心文档的版面设计;
- 很容易生成复杂的专业排版元素,比如脚注、交叉引用、参考文献、目录等
- 强大的扩展性,数以千计的LaTeX宏包扩展了LaTeX的功能
- LaTeX促使用户写出结构良好的文档
- 免费开源跨平台
缺点:
- 上手门槛高
- 排查错误困难
- 样式定制困难
- 相比所见即所得,多有不便
1.2 LaTeX命令和代码结构
LaTeX源码本质上式文本文件,专业的编辑LaTeX源代码的编辑器提供了一些语法高亮、命令补全等功能。
1.2.1 LaTeX命令和环境
LaTeX命令以反斜线\
,为以下两种形式之一:
- 反斜线和后面的一串字母,如
\LaTeX
,他们以任意非字母符号(空格、数字、标点等)作为分隔符 - 反斜线和后面的一个非字母符号,如
\$
,无需分隔符
LaTeX命令对大小写是敏感的,只有\LaTeX
命令才能生成错落有致的LaTeX。
字母形式的LaTeX命令忽略其后的所有空格,人为引入空格则加入一堆括号阻止其忽略空格
image1.2.2 LaTeX源代码结构
LaTeX源代码以一个\ducumentclass
命令作为开头,他规定了文档使用的文档类:
\documentclass{article}
接着我们可以使用\usepackage
命令调用宏包:
\usepackage{amsmath}
接着以一对命令来标记正文内容的开始位置和结束位置
\begin{document}
\end{document}
在他们之前的位置称为导言区,除了使用\usepackage
调用宏包之外,一些对文档的全局设置也在这里使用。
1.3 用命令行操作LaTeX
texdoc amsmath
1.3.1 引擎、格式和命令
引擎 全称为排版引擎,是读入源代码并编译生成文档的程序,比如pdfTEX,xelatex等
格式 是定义了一组命令的代码集,LaTeX是最广泛应用的一个格式
命令 是引擎和格式二者的结合体
1.3.2 latex命令
latex hellowold.tex
helloworld.dvi
dvipdfmx helloworld.dvi
pdflatex helloworld.tex
xelatex helloworld.tex
1.4 宏包和文档类
1.4.1 文档类
\documentclass[12pt]{article}
\documetclass[可选参数]{文档类名称}
article | 文章格式,广泛用于科技论文、报告 |
---|---|
report | 长篇报告格式,具有章节结构,用于综述、长篇论文、简单的书籍 |
book | 书籍文档类,包括章节结构和前言、正文、后记等结构 |
proc | 基于article文档类的一个简单的学术文档模板 |
slides | 幻灯片格式的文档,使用无衬线字体 |
minimal | 极其精简的文档类 |
可选参数为文档类指定选项,以全局地影响文档布局的参数,如字号、纸张大小、单双面等等,比如
\documentclass[12pt,twoside,a4paper]{article}
fleqn——令行间公式左对齐,一般为居中
leqno——将公式编号放在左边
titlepage,notitlepage——指定命令\maketitle
是否生成单独的标题页,article一般为notitlepage,report和book一般为titlepage
onecolumn, twocolumn——指定单栏/双栏排版
landscape——指定横向排版,缺省为纵向
1.4.2 宏包
排版复杂的表格、插入图片、增加颜色等依赖一些扩展,这些扩展称为宏包。
\usepackage{amsmath}
\usepackage{xeCJK}
每个宏包都都定义了许多命令和环境,为了查阅宏包和文档类的帮助手册,请在windows命令提示符中输入命令:
texdoc amsmath
1.5 LaTeX用到的文件一览
.sty 宏包文件
.cls 文档类文件
.bib BIBTEX参考文献数据库文件
.bst BIBTEX用到的参考文献格式模板
辅助文件和日志
.log 排版引擎生成的日志文件,以供排查错误使用
.aux LaTeX生成的辅助文件,记录交叉引用、目录、参考文献的引用等
.toc LaTeX生成的目录记录文件
.lof LaTeX生成的图片目录记录文件
.bbl BIBTEX生成的参考文献记录文件
.blg BIBTEX生成的日志文件
1.6 文件的组织方式
当编写较大规模的LaTeX源代码,如书籍、毕业论文等,你有理由将源代码分成若干个文件,LaTeX提供了命令\include{文件名}
在源代码里插入文件:
\include{chapters/a.tex}%相对路径
\include{/home/bob/file.tex}%Linux绝对路径
\include{D:/file.tex}%windows绝对路径
<filename>可以不带扩展名,此时默认为.tex文件,其他文件必须带扩展名
一般来说,\include在读入<filename>会另起一页,有时候我们并不需要这样,只需要插入:
\input{filename.tex}
另外LaTeX提供了另一个\includeonly命令来组织文件,用于导言区,指定只载入某些文件:
\includeonly{test1,test2,test3}
正文中不在其列表范围的\include命令不会起作用
最后一个工具宏包syntonly,加在这个宏包以后,可令LaTeX编译后不生成dvi或者pdf文档,只排查错误,编译速度会快上不少:
\usepackage{syntonly}
\syntaxonly