You are on page 1of 7

我的LaTeX学习笔记

Vincent Zhang

VincentMe.org

LaTeX
LaTeX(LATEX,音译“拉泰赫”)是一种基于TeX的排版系统,由美国计算机学家Leslie
Lamport在20世纪80年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也
可以充分发挥由TeX所提供的强大功能,能在几天,甚至几小时内生成很多具有书籍质量的印
刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。因此它非常适用于生成高印刷
质量的科技和数学类文档。这个系统同样适用于生成从简单的信件到完整书籍的所有其他种类
的文档。

摘自中文维基百科-LaTeX条目。

文档
文档模式
字号
中文书籍一般使用基本字号为五号字(10.5pt),故在article中一般选用11pt,
若不选默认为10pt。

空格
中文与英文之间一般加入小空隙排出来才好看,可以加"\,"或者"~"。中文与行
内公式之间也要加。
如果"."不表示句子的结束,应加入"\空格",如"Mr. Wang"应输入为"Mr.\空格
Wang"。 因为当"."表示句号时,TeX会加入一段额外的空隙。
TeX遇到一个单词以大写字母结束时会自动认为这并不是句子的结束,故这种情
况不必加入\空格。但如果确实是句子的结束,就需要在"."前加上"\@”,如
“I study in SJTU\@.”。

分行
\\[*],*为指定的行间距。
mbox{文本}可以将文本保持在同一行内。数学模式中一般以此加入中文。而且
mbox里也可以出现数学模式。

标题
在用\author定义作者时可使用\and命令,来包含多个作者的信息。

\author{作者1\\单位1\\地址1
\and 作者2\\单位2\\地址2}
在\title、\author、\date中均可出现thanks命令来实现脚注。
对齐
左对齐、居中对齐、右对齐的环境分别为flushleft、center和flushright。也可
以使用命令\raggedright、\centering和\raggedleft使以后的文本按指定方
式对齐

引用
quotation环境:有段首缩进(正常段落有缩进的话),有正常段间距。
quote环境:无首行缩进,增大段间距。
verse环境:类似quote,但换行时为左端悬挂。

抄录
verbatim环境可原样输出其中的文本,忽视TeX命令。verbatim*会将空格以└
┘的形式输出。
对简短的抄录,可使用\verb|文字|和\verb*|文字|。

盒子
\mbox与\fbox的区别是后者会生成一个框将里面的文字包起来。
\makebox[宽度][位置]{文本}中可指定盒子宽度,文本在盒子中的位置(l:左
端;r:右端;s:两端,默认是居中)。\framebox与此类似,也是加一个
框。

表格
\begin{tabular}[竖向格式]{列格式}
…………
\end{tabular}
竖向格式可以选择t:顶部与外部对齐;b:底部与外部对齐,不选默认为与外
部居中对齐。
\multicolumn{列数}{列格式}{文本}可以以指定的文本和列格式填充数列。
\cline{a-b}画一条从a列到b列的水平线。
也可以使用可视化工具LaTable来输入表格。

脚注
在不能使用脚注的环境(数学模式、表格、盒子等)中,可以先声明一个脚注
标记\footnotemark,在禁止模式外再加入脚注文本\footnotetext{脚注文
本}。

图形
在LaTeX中画图可使用amscd、diagrams、Xy-pic、MetaPost、PSTricks、
PGF等宏包或软件,但都较复杂,如只需要画简单的图形,可以使用一款所见
即所得作图工具WinFIG。
插入图形可使用graphicx宏包。使用LaTeX编译时选择dvips选项,能插入eps
格式的图形。使用pdfLaTeX编译时选择pdfTex选项,能插入pdf、png、tif
、jpg格式的图片,但不支持eps。
插入图片的基本命令是\includegraphics{文件名}。
放大缩小图形可使用\scalebox{横向放缩因子}[竖向放缩因子]
{\includegraphics{文件名}}。若不输入B则竖向放缩因子等于横向放缩因子。
数学模式
空白间隙
\quad 即\hspace{1em},当前M的宽度
\qquad 即\hspace{2em},两个M的宽度
\; 5/18个M的宽度
\: 4/18个M的宽度
\, 3/18个M的宽度
\! -3/18个M的宽度
\空格 产生一个空格
\hspace{长度} 产生指定宽度
\phantom{文本} 产生指定文本的宽度

行内公示
三种进入退出行内模式的方法
\(……\)
\begin{math}……\end{math}
$……$

行间公式
进入单行无编号公式环境也有三种方法
\[……\]
\begin{displaymath}……\end{displaymath}
$$……$$
使用$$……$$环境可以手动指定编号
$$公式 \eqno自定编号$$
加载amsmath宏包后,使用选项fleqn(就是声明加载宏包时使用
\usepackage[fleqn]{amsmath})可以使本该居中对齐的行间公式改为左对
齐。也可以在\documentclass中使用该选项。

单行公式
自动编号的单行公式
\begin{equation}
公式
\end{equation}
单行公式中可以是作为一个整体出现的环境或者盒子,如array环境。
当一个公式太长不适合排在一行时,可以使用split环境(amsmath)。在
split中可以换行、以&进行对齐,同时使多行公式合并为一个整体用在
equation中。

多行公式
多行公式可以使用eqnarray环境,带星号可取消自动编号。
\begin{eqarray}
左边公式 & 中间公式 & 右边公式 \\
左边公式 & 中间公式 & 右边公式 \\
…………………………………………………………
左边公式 & 中间公式 & 右边公式
\end{eqarray}
中间公式一般是单个数学符号,如=、>等。
eqnarray自动为每行公式编号,如不希望某行被编号,则在\\之前需加入
\nonumber。
gather环境(amsmath)使其中每一个公式居中对齐,\notag可以使某行
不自动编号,使用gather*则全部不自动编号。
align环境(amsmath)可以以&指定每一行上下对齐的位置。同样,
\notag可以使某行不自动编号,使用align*则全部不自动编号。
flalign环境(amsmath)与align基本相同,但是使公式在每一行左右对
齐。
alignat环境(amsmath)与align类似,可指定几个列队之间的间距,但需
要一个参数,即为每一行中&的个数加1后除以2。

\begin{aligned}{2}
a&=b &\hspace{20pt) c&=d\\
e&=f & g&=h
\end{aligned}
此时“a=b”与“c=d”之间的距离即为指定的20pt。
gathered、aligned和alignated环境(amsmath)可以将生成的公式作为
一个“块”放在其他环境里,er相应的不加“ed”的环境是独占它所在的
行。
case环境(amsmath)用来排版左侧带有花括号的方程组,如分段函数的
定义等。

上标下标
在上标、下标环境输入中文应指定字体大小。一级下标为\scriptsize;二级下标
为\tiny。
如 \[
U_{\mbox{\scriptsize 极大值}}=8.3\, V
\]
输入字母左边的角标可以使用一个空字符
如 \[
{}_{\phantom{1}7}^{14}\mathrm{N}^-_5
\]
也可以使用amsmath宏包的\sideset{左侧角标}{左侧角标}主体符号。

国际标准
向量用粗斜体表示。加载bm宏包后可用\bm命令实现。
常数(如π、i、e等)和微分算子d用直立体表示。
定义下面三条命令
\newcommand{\dif}{\mathrm{d}}
\newcommand{\me}{\mathrm{e}}
\newcommand{\mi}{\mathrm{i}}
后就可以用\dif输入微分算子d了。
无衬线斜体表示矩阵与张量。
需定义新字体mathfsl:
\DeclareMathAlphabet{\mathsfsl}{OT1}{cmss}{m}{sl}
使用\mathfsl{矩阵}来输入。
数与单位之间应有一个小空隙\,并且单位的字体应为直立体。
定理环境
我一般要自定义下面几个定理环境。
\newtheorem{theorem}{定理}[section]
\newtheorem{definition}{定义}[section]
\newtheorem{lemma}{引理}[section]
\newtheorem{corollary}{推论}[section]
\newtheorem{proposition}{性质}[section]
\newtheorem{example}{例}[section]
\newtheorem{remark}{注}[section]
如果文档类型为book或者report的话就应将主计数器改为chapter。

插入文本
既可以使用\mbox{文本},也可以使用amsmath提供的\text{文本}。后者能自
动根据环境改变字体大小。
在多行公式之间加入文本可用\intertext{文本}。(需加载amsmath宏包)

多重角标
\substack{a\\b}(amsmath)可产生多重角标,例如用在求和号下方。a和b是
居中对齐的。
也可以使用\subarray环境(amsmath)。它可以指定对齐方式(l:左对齐;
c:居中对齐)

\begin{subarray}{l}
abcd\\
edfg
\end{subarray}

分式
一般的分式使用\frac{分子}{分母}输入。
连分式可使用amsmath的\cfrac{分子}{分母}输入,它可以使分子分母保持同样
大的字体。

二项式系数
A \atop B和A \choose B均可产生A在上B在下的二项式系数表达式。
加载amsmath宏包后以上两个命令无效,需换用\binom{A}{B}。

宏包
ctex
使用文档类型为ctexart、ctexbook、ctexrep或者加载了ctex、ctexcap宏包后,
会增加以下六种改变字体命令,\kaishu相当于\CJKfamily{kai},其余类似。
\kaishu楷书\songti宋体\youyuan幼圆\lishu隶书\fangsong仿宋\heiti黑体使用命令
\zihao{...}来改变字号,参数可以选择0、-0、1、-1……6、-6、7、8,分别对应初号、小初、
一号、小一……七号、八号。
文档类型为ctexart、ctexbook、ctexrep或者加载了ctex、ctexcap宏包后,会自
动加入CJK环境,不必再手动加入了。
bibtex
利用bibtex建立引用文献数据库时先在待编译的源文件同目录下建立一个后缀名为".
bib"的文件。以如下格式输入所有需要引用的文献资料
@ARTICLE{,
AUTHOR = {},
normalauthor = {},
TITLE = {},
JOURNAL = {},
YEAR = {},
miscyear = {},
VOLUME = {},
NUMBER = {},
PAGES = {},
MONTH = {},
TypeofLit = {},
date = {},
modifydate = {},
citedate = {},
url = {},
language = {},
}
这可以用winedt的insert->BibTeX items输入,需要填写的是首字母大写的项目。
在winedt中同时打开TeX和bib文件,在需要引用的地方加入\cite{}就会自动弹出一
个对话框选择需要引用的项目。
在导言区加入引用文献的格式\bibliographystyle{plain},如果杂志有特殊要求它会
提供bst文件。将plain改为bst的文件名就可以了。
在文末需要出现参考文献的地方加入\bibliography{bib文件名,不带后缀名.bib}

fancyhdr
fancyhdr宏包可以设计版面布局。
\lhead指定左页眉内容,\rfoot指定右页脚内容,其余依次类推。
使用时加载fancyhdr宏包,并且指定\pagestyle{fancy}。若使用ctexart等文档模
式需要在选项中加入fancyhdr。
下面是我一般用的设置,供参考
\fancyhf{} %清空页眉
页脚
\lhead{\bfseries Shanghai Jiao Tong University}
\rhead{\heiti 上\,海\,交\,通\,大\,学}
\cfoot{\thepage}
\lfoot{\small \sffamily Materials Science and Engineering}
\rfoot{\kaishu 材料科学与工程学院}

编辑器
winedt
环境匹配
在输入\begin{enviroment}后立即一个右花括号}后,会自动输出
\end{enviroment}并且换行居中。
工具
LaTable
可视化输入表格

http://www.g32.org/latable/index.html

WinFIG
一款所见即所得作图工具,支持TeX命令输出,兼容性好。

http://user.cs.tu-berlin.de/~huluvu/WinFIG.htm

You might also like