1.保留字符
#,$,%,^,&,_,{,},~,\;
若要在文本中显示他们,需要在这些字符前面加上反斜线:\#,\$,\%,\^{},\&,\_,\{,\},\~{},$\backslash$;
引号:用两个'产生双引号而非一个"产生;
破折号与连字号:一个-产生连字号,两个-产生短破折号,三个-产生长破折号;
波浪号:我们看一个例子:
\documentclass[11pt,twoside,a4paper]{article}
\begin{document}
http://www.gaea.edu/\~{}bush
http://www.gaea.edu/$\sim$demo
\end{document}
效果如下:
度:我们看一个例子:
\documentclass[11pt,twoside,a4paper]{article}
\begin{document}
Its $-20\,^{\circ}\mathrm{C}$,I will soon start to super-conduct.
\end{document}
效果如下:
省略号:\ldots
连字:我们看一个例子:
\documentclass[11pt,twoside,a4paper]{article}
\begin{document}
different
dif\mbox{}ferent
\end{document}
编译效果如下:
上面的different中的ff连在了一起,但是下面的different就没有,这是因为在f之间使用了\mbox{}从而禁止了连字;
2.Latex命令
Latex命令有两种格式:(1)以反斜线\开始,后面跟只包含字母字符命令名组成;(2)由一反斜线与一特殊字符组成;
注:Latex忽略命令后的空格,若希望在命令后面得到一个空格,可在命令后面加{}与一个空格,以阻止Latex吞噬掉命令后面的空格
eg:
\documentclass[UTF8]{ctexart}
\begin{document}
I read that Knuth divides the
people working with \TeX{} into
\TeX{}nicians and \TeX perts.\\
Today is \today.
\end{document}
编译之后:
许多命令需要一个参数,则用一个{}将其括起来置于命令名称之后;对于可选参数,用[]将其括起来;
eg:
\documentclass[UTF8]{ctexart}
\begin{document}
You can \textsl{learn} on me!
\end{document}
编译效果如下:
3.注释
在Latex处理源文件时,若遇到%,它将忽略改行之后的文本,分行符以及下一行开始的空白字符;使得我们可以在文档中写一些注释;另外,当有较长的输入文本时,为了源文件美观,可在输入文本之间插入%然后换行,最后编译出来仍然连接在一起;
eg:
\documentclass[UTF8]{ctexart}
\begin{document}
This is an % stupid
%Better : instructive <----
example : Supercal%
ifragilist%
icexpialidocious
\end{document}
编译之后:
4.源文件结构
每个Latex文档以\documentclass{...}命令开始,在{...}内指定你所写文档的类别;
在使用\begin{document}开始你的文档之前,你可以加入控制文档式样的命令,导入一些宏集(\usepackage{...},{...}中写入宏集名),通常将此区域称为导言区;
之后,你可以写入文本与命令,在文档的最后键入\end{document}作为你文档结束的标志,Latex会忽略\end{document}之后的文档命令;
5.文档类
\documentclass[options]{class},其中class设定文档类型;文档类的属性通过options来调节,不同的选项用逗号隔开;
文档类型常用的有如下几种:
article | 排版科技期刊,短报告,程序文档,邀请函等(该类未定义章) |
report | 排版多章节的长报告,短篇的书籍,博士论文(新的一章开始与下一可用页) |
book | 排版书籍 |
slides | 排版幻灯片 |
下面是一些常用的文档类属性:
10pt,11pt,... | 设置文档所使用的字体大小 |
a4paper,letterpaper,... | 设置纸张的大小,缺省设置为letterpaper(其他选项:a5paper,b5paper,executivepaper,legalpaper) |
fleqn | 使数学公式左对齐,而非中间对齐 |
leqno | 使数学公式的编号置于左侧 |
titlepage,titlepage | 是否在文档标题后开始一新页,article缺省不开始,而book则相反 |
onecolumn,twocolumn | 以单列或双列的方式排版文档 |
twoside,oneside | 以单面或双面的格式排版文档,article与report缺省使用单面,book相反 |
openright,openany | 决定新的一章仅仅在右边页还是下一可用页开始 |
6.宏包
如果你想插入图形,彩色文本,或源代码文件,你需要使用宏包来增强Latex的功能;调用宏包的命令:\usepackage[options]{package},这里的options是用来触发宏包中特殊功能的一组关键词
7.页面式样
Latex支持三种预定的页眉、页脚格式;使用命令:\pagestyle{style},预先定义的页眉式样如下表:
plain | 页眉为空,页脚由居中的页码组成,这是默认的页面式样 |
headings | 页眉有当前的章节标题与页码组成,页脚为空 |
empty | 设置页眉页脚均为空 |
8.多文件编译
当处理大型文档时,最好将源文件分成几个部分,有两个命令均可用来处理这种情况;
(1) \include{filename}:在文档的正文中使用此命令可将文件名为filename.tex的内容包括进来;注意Latex在开始处理该文件之前会开始一新页;另外,在文档的导言区,可使用命令\includeonly{filename,filename,...}使得Latex仅仅读取{ }内指定的文件。
(2) \input{filename}:该命令仅仅将指定的文件包括进来,无任何限制。
9.快速运行
使用syntonly宏包可让Latex快速检测你的文档,仅仅检测语法与使用的命令是否正确,不会产生DVI输出,从而节省可观的时间;使用方法:
\usepackage{syntonly}
\syntaxonly
10.文档划分
为便于读者理解,应该将文档划分为章,节与子节;
节划分:\section{...};子节划分:\subsection{...};子子节划分(不建议):\subsubsection{...};
对于report与book风格的文档,还有其他两个分节命令:、\part{...}与章划分:\chapter{...};
Latex在文档编译的最后一个循环中,提取节的标题和页码生成目录,命令:\tableofcontents,在其出现的位置插入目录(为得到正确的目录内容,需将文档编译多次)
“带星”形式:命令\section{Help}的“带星”形式为\section*{Help},则该标题既不出现与目录,也不带序号;
11.标题
\documentclass{article}
\usepackage{ctex} %使用宏包(为了能够显示汉字)
\title{文章的标题} %文章标题
\author{作者名称} %作者的名称
\date{\today} %日期
\begin{document}
\maketitle %添加这一句才能够显示标题等信息
\end{document}
编译效果如下:
12.三个有用的命令
\frontmatter:接着命令\begin{document}使用,;它将页码更换为罗马数字,对于正文前的内容普遍使用“带星”命令,以阻止Latex对其进行排序;
\mainmatter:放在书的第一章最前面,它打开阿拉伯页码计数器对页码重新计数;
\appendix:标志书中附录材料的开始;该命令后的各章序号改用字母标记;
13.交叉引用
交叉引用命令有三个:\label{marker},\ref{marker}与\pageref{marker};用下面一个例子来说明:
\documentclass[a4paper,11pt]{article}
\begin{document}
\section{One}
A reference to this subsection
\label{sec:this} looks like: ‘‘see section~\ref{sec:this} on
page~\pageref{sec:this}.’’
\end{document}
编译效果如下:
14.脚注
使用命令\footnote{notetext}会将脚注内容排印与当前页的页脚位置。脚注命令总是置于其指向的单词或句子后面;
15.强调
(1)下划线:\underline{text}
(2)斜体:\emph{text},需要注意该命令对参量的实际作用效果依赖于它的上下文,看如下例子:
\documentclass[a4paper,11pt]{article}
\begin{document}
\emph{If you use emphasizing inside a piece of emphasized text,
then \LaTeX{} uses the \emph{normal} font for emphasizing.}
\end{document}
编译效果如下:
可以看到,在正体里面强调会成斜体,在斜体里面强调会成正体;
16.环境
命令格式:\begin{env} text \end{env},其中env是环境的名称,环境可以嵌套;
(1)列表
itemize | 用于简单的列表 |
enumerate | 用于带序号的列表 |
description | 用于带描述的列表 |
eg:对于列表环境的简单使用
\documentclass[a4paper,11pt]{article}
\begin{document}
\flushleft
\begin{enumerate}
\item You can mix the list environments to your taste:
\begin{itemize}
\item But it might start to look silly.
\item[-] With a dash.
\end{itemize}
\item Therefore remember:
\begin{description}
\item[Stupid] things will not become smart because
they are in a list.
\item[Smart] things, though, can be presented beautifully
in a list.
\end{description}
\end{enumerate}
\end{document}
编译效果如下:
(2)靠左,靠右与居中
Flushleft | 文本靠左排列 |
Flushright | 文本靠右排列 |
Center | 文本居中排列 |
\documentclass[a4paper,11pt]{article}
\begin{document}
\begin{flushleft}
This text is\\ left-aligned.
\LaTeX{} is not trying to make
each line the same length.
\end{flushleft}
\begin{flushright}
This text is right-\\aligned.
\LaTeX{} is not trying to make
each line the same length.
\end{flushright}
\begin{center}
At the centre\\of the earth
\end{center}
\end{document}
编译效果如下:
(3)表格
命令:\begin{tabular}{spec},参量spec定义了表格的式样;用l产生一个左对齐的列,用r产生一个右对齐的列,用c产生一个居中的列,用p{width}产生相应的宽度,|产生铅直表线;
在tabular环境中,用&跳入下一列,用\\开始新的一行,用\hline插入水平表线(\cline{j-i}可添加从第j列到第i列的表线)
eg:
\documentclass[a4paper,11pt]{article}
\begin{document}
\begin{center}
\begin{tabular}{|r|l|}
\hline
7C0 & hexadecimal \\
3700 & octal \\ \cline{2-2}
11111000000 & binary \\
\hline \hline
1984 & decimal \\
\hline
\end{tabular}
\end{center}
\end{document}
编译效果如下:
(4)浮动体
对于当前排不下的任何一个图片或表格,其解决办法是将他们浮动到之后的页面,与此同时当前页面用正文文本填充;Latex提供了图片与表格的浮动体环境\begin{figure}[spec],\begin{table}[spec];spec为放置说明符,其由浮动允许放置参量写成的字符串组成:
h | 浮动体就放在当前页面 |
t | 浮动体放在页面顶部 |
b | 浮动体放在页面底部 |
p | 放在一专门页面,仅含一个浮动体 |
! | 严格安装放置说明符放置 |
eg:\begin{table}[!hbp]
标题:\caption{text}给浮动体定义一个标题;另外两个命令\listoffigures与\listoftables分别排印一个图目录与表目录,如下例:
\documentclass[a4paper,11pt]{article}
\begin{document}
Figure~\ref{white} is an example of Pop-Art.
\begin{figure}[!hbp]
\makebox[\textwidth]{\framebox[5cm]{\rule{0pt}{5cm}}}
\caption[short]{Five by Five in Centimetres.} \label{white}
\end{figure}
\listoffigures
\end{document}
编译效果如下:
上面例子中,画了一个方形,将其插入文档,给方形的标题为Five by Five in Centimetres,但是可以看到在图目录中图1的标志为short,因为当标题太长时,就需要准备一个能够放进目录的、较短版本的标题,虽然此处可以不必须准备这样的一个标题,但是如果在[ ]里面设定了一个标题,那么在目录中就会用[ ]设定的标题;
(5)保护脆弱命令:\protect保护紧跟其右侧的命令,因为在一些环境中有些命令会失效;
17.数学公式
数学符号 | Latex命令 |
x^{2} | |
x_{1}^{2} | |
\lim_{n \to \infty}f(x) | |
\sum_{i=1}^{\infty}f(x) | |
\frac{1}{x} | |
\pi | |
\forall | |
\exists | |
\in | |
\leq | |
\geq | |
\mathbb{R}(需预先导入宏包amssymb) | |
\mathbf{X} | |
\textrm{for all} | |
\neq | |
\alpha | |
\beta | |
\gamma | |
\lambda | |
\mu | |
\Phi | |
\Omega | |
\sigma | |
\tau | |
\sqrt[3]{n}(若缺省方括号,则为平方根) | |
\overline{n} | |
\underline{m} | |
\pi \ \pi(这里是想说明用\可表示空格,另外还有\quad,\qquad) | |
1+\cdots+n | |
1,\ldots,n | |
\vdots | |
\ddots | |
\overbrace{a+b+\cdots+z}^{26} | |
\underbrace{a+b+\cdots+z}_{26} | |
\vec a | |
\cdot | |
\leftarrow | |
\rightarrow | |
a \bmod b(\bmod用于二元运算符) | |
c=a \pmod b(\pmod用于表达式) | |
{n \choose k} | |
\int_{0}^{1} x \textrm{d} x | |
\iint_{D}f(x,y) \textrm{d} x \textrm{d} y(需要用到amsmath宏集) | |
\idotsint_{D} f(x) \textrm{d} x | |
\prod_{i=1}^{3}i=6 |
(1)垂直对齐
\documentclass[a4paper,11pt]{article}
\usepackage{amssymb}
\usepackage{amsmath}
\begin{document}
\begin{displaymath}
\mathbf{X} =
%将\left放在分隔符之前,使得Latex自动决定分隔符的大小
\left( \begin{array}{ccc}
x_{11} & x_{12} & \ldots \\
x_{21} & x_{22} & \ldots \\
\vdots & \vdots & \ddots
\end{array} \right)
%注意必须用一个\right来结束一个\left
\end{displaymath}
\end{document}
编译效果如下:
如果需要隐藏右分隔符:在\right后加“.”
\documentclass[a4paper,11pt]{article}
\usepackage{amssymb}
\usepackage{amsmath}
\begin{document}
\begin{displaymath}
y = \left\{ \begin{array}{ll}
a & \textrm{if $d>c$}\\
b+x & \textrm{in the morning}\\
l & \textrm{all day long}
\end{array} \right.
\end{displaymath}
\end{document}
对于多行公式,使用eqnarray(会给每个公式编号)或eqnarray*(不给每个公式编号)代替equation,如下例:
\documentclass[a4paper,11pt]{article}
\usepackage{amssymb}
\usepackage{amsmath}
\begin{document}
\begin{eqnarray}
f(x) & = & \cos x \\
f’(x) & = & -\sin x \\
\int_{0}^{x} f(y)dy &
= & \sin x
\end{eqnarray}
\end{document}
编译结果如下:
可以看到等号两边的空格有点大,通过命令\setlength\arraycolsep{2pt}来减小空格;
\documentclass[a4paper,11pt]{article}
\usepackage{amssymb}
\usepackage{amsmath}
\begin{document}
{\setlength\arraycolsep{2pt}
\begin{eqnarray}
\sin x & = & x -\frac{x^{3}}{3!}
+\frac{x^{5}}{5!}-{}
%nonumber阻止Latex为此公式生成编号
\nonumber\\
& & {}-\frac{x^{7}}{7!}+{}\cdots
\end{eqnarray}}
\end{document}
编译效果如下:
18.字体与尺寸
使用字体命令时,大括号扮演了一个重要角色,他们被用于建立所谓的组。组限制了大多数Latex命令的作用范畴。
设定行距:\linespread{factor};
段落格式:首行缩进—\setlength{\parindent}{size}写在导言区,然后在段落的开始使用命令\indent使得该段首行缩进,使用\indent使得该段首行不缩进