LaTex
基础常识
文档类
% 英文文档类一般用article
\documentclass{
article}
% 中文文档类一般用ctexart
\documentclass{
ctexart}
编译类型
% 英文推荐,pdflatex,显示中文需要加utf8
% 中文推荐,xelatex
命令格式
命令通常以反斜线开头,可以带零到多个参数。命令也可以是直接输出某种结果;也可以改变一个状态,此时 LATEX用花括号 {} 分组或环境作为状态改变的作用域。
% 参数总在后面,用中括号表示可选参数
\cmd [opt] {
arg1} {
arg2}
\frac{
1}{
2}
\em abc
\emph{
abc}
环境介绍
\begin{
env}
...环境的内容
\wnd{
env}
\begin{
matrix} ... \\ ... \end{
matrix}
\begin{
flushright}
文字
\end{
flushright}
简单书写
1. 正文文本
- 直接输入正文文本。
- 用空格分开单词。一个换行符等同于一个空格,多个空格的效果与一个 相同。
- 自然段分段是空一行。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\begin{document}
aa bb cc dd ee ff
aa bb cc dd ee ff
aa bb cc dd ee ff
aa bb cc dd ee ff
aa bb cc dd ee ff
aa bb cc dd ee ff
aa bb cc dd ee ff
aa bb cc dd ee ff
aa bb cc dd ee ff
aa bb cc dd ee ff
aa bb cc dd ee ff
aa bb cc dd ee ff
aa bb cc dd ee ff
aa bb cc dd ee ff
\end{document}
2. 正文符号
\# \$ \% \& \{ \} \textbackslash
对应如下:# $ % & { } \
\S \dag \ddag \P \copyright \textbullet \textregistered \texttrademark \pounds
对应如下:§ † ‡ ¶ © • ® ™ £
标题作者
1. 导入宏包
\usepackage{authblk}
2. 标题、作者、机构
\title{...}
显示标题,会自行设定当前日期\date{}
可以去掉日期\author[opt]{...}
可选参数一般设定为第几作者,大括号参数为作者名字\author[opt]{...\thanks{Corresponding author: [email protected]}}
通讯作者使用\thanks{...}
\affil[opt]{...}
设置机构,可选参数应当与\author[opt]{...}
的可选参数对应\renewcommand*{\Affilfont}{\small\it}
修改机构名称的字号和大小\renewcommand\Authands{ and }
可以去掉 and 前的逗号
\title{Who am I}
\author[1]{Author A}
\author[1]{Author B \thanks{Corresponding author: [email protected]}}
\author[2]{Author C}
\affil[1]{Department of Computer Science, the Southeast University}
\affil[2]{Department of Computer Science, the Southeast University}
\renewcommand*{\Affilfont}{\small\it} % 修改机构名称的字体与大小
\renewcommand\Authands{ and } % 去掉 and 前的逗号
3. 正文显示
\begin{document}
\maketitle
\end{document}
章节、目录和列表
不同的文档类中的章节不一样。我们常用的article文档类的章节层次有:section, subsection, subsubsection, paragraph, subparagraph。使用方法均为添加 \
和 {}
1. 章节
\section{one}
\section{two} % 加*之后就不会带序号了
\subsection{title}
\subsubsection{title}
\paragraph{title}
\subparagraph{title}
2. 目录
\tableofcontents
在需要的地方插入此条命令。
3. 列表环境
enumerate
编号itemize
不编号description
有标题
\begin{itemize}
\item Who am I?
\item I am me.
\item Do you think so?
\end{itemize}
\begin{enumerate}
\item Who am I?
\item I am me.
\item Do you think so?
\end{enumerate}
\begin{
description}
\item[aaa] Who am I?
\item[bbb] I am me.
\item[ccc] Do you think so?
\end{
description}
公式
1. 数学公式
数学模式下字体、符号、间距与正文都不同,一切数学公式(包括单个符号 n, π)都要在数学模式下输入。
行内(inline)公式:使用一对符号 $ $ 来标示。如 $a+b=c$
。
显示(display)公式:
- 简单的不编号公式用命令
\[
和\]
表示。 - 基本的编号的公式用 equation 环境。
- 更复杂的结构,使用 amsmath 宏包提供的专门的数学环境。(不要 使用 eqnarray 环境)
四则运算
LaTex | 显示 |
---|---|
1+1=2 | 1 + 1 = 2 1+1=2 1+1=2 |
1-1=0 | 1 − 1 = 0 1-1=0 1−1=0 |
1 \cdot 1=1 | 1 ⋅ 1 = 1 1 \cdot 1=1 1⋅1=1 |
1\div1=1 | 1 ÷ 1 = 1 1\div1=1 1÷1=1 |
累加
\sum_{下标表达式}^{上标表达式}{累加表达式}
LaTex | 显示 |
---|---|
\sum_{i=1}^{n}{x_i} | ∑ i = 1 n x i \sum_{i=1}^{n}{x_i} ∑i=1nxi |
累乘
\prod_{下标表达式}^{上标表达式}{累加表达式}
LaTex | 显示 |
---|---|
\prod_{i=1}^{n}{x_i} | ∏ i = 1 n x i \prod_{i=1}^{n}{x_i} ∏i=1nxi |
上标下标
LaTex | 显示 |
---|---|
x^2 | x 2 x^2 x2 |
x_1 | x 1 x_1 x1 |
x_i^2 | x i 2 x_i^2 xi2 |
向量、平均
LaTex | 显示 |
---|---|
\vec{a} | a ⃗ \vec{a} a |
\hat{a} | a ^ \hat{a} a^ |
分式
分式:\frac{分子}{分母}
LaTex | 显示 |
---|---|
\frac{1}{2} | 1 2 \frac{1}{2} 21 |
根式
根式:\sqrt[次数]{根号下}
LaTex | 显示 |
---|---|
\sqrt{x^3} | x 3 \sqrt{x^3} x3 |
\sqrt[3]{x^2} | x 2 3 \sqrt[3]{x^2} 3x2 |
方程式
equation
环境和cases
环境
\begin{equation} % equation带*之后的意思不整体标号
\begin{cases}
x_{1}+y_{1}=12\\
x_{2}-y_{1}=6
\end{cases}
\end{equation}
极限
极限:\lim
LaTex | 显示 |
---|---|
\lim_{x \to 0}\frac{\sin x}{x}=1 | lim x → 0 sin x x = 1 \lim_{x \to 0} \frac{\sin x}{x}=1 limx→0xsinx=1 |
导数
导数:{f}’(x)
LaTex | 显示 |
---|---|
{f}’(x) = x^2 + x | f ’ ( x ) = x 2 + x {f}’(x) = x^2 + x f’(x)=x2+x |
积分
积分:\int
被积函数和dx之间、多重积分内 dx 和 dy 之间 使用一个斜杠加一个逗号 , 来增大稍许间距。
两个积分号之间使用一个斜杠加一个感叹号来减小稍许间距。使之更美观。
LaTex | 显示 |
---|---|
\int_a^b f(x)\,dx | ∫ a b f ( x ) d x \int_a^b f(x)\,dx ∫abf(x)dx |
\int_a^b f(x)g(y)\, dx\,dy | ∫ a b f ( x ) g ( y ) d x d y \int_a^b f(x)g(y)\, dx\,dy ∫abf(x)g(y)dxdy |
\int \!\!\!\int_D f(x,y)\,dxdy | ∫ ∫ D f ( x , y ) d x d y \int \!\!\!\int_D f(x,y)\,dxdy ∫∫Df(x,y)dxdy |
2. 希腊字母
LaTex | 希腊字母 | LaTex | 希腊字母 |
---|---|---|---|
\alpha | α \alpha α | \Alpha | A \Alpha A |
\beta | β \beta β | \Beta | B \Beta B |
\gamma | γ \gamma γ | \Gamma | Γ \Gamma Γ |
\delta | δ \delta δ | \Delta | Δ \Delta Δ |
\epsilon | ϵ \epsilon ϵ | \Epsilon | E \Epsilon E |
\zeta | ζ \zeta ζ | \Zeta | Z \Zeta Z |
\eta | η \eta η | \Eta | H \Eta H |
\theta | θ \theta θ | \Theta | Θ \Theta Θ |
\iota | ι \iota ι | \Iota | I \Iota I |
\kappa | κ \kappa κ | \Kappa | K \Kappa K |
\lambda | λ \lambda λ | \Lambda | Λ \Lambda Λ |
\mu | μ \mu μ | \Mu | M \Mu M |
\nu | ν \nu ν | \Nu | N \Nu N |
\xi | ξ \xi ξ | \Xi | Ξ \Xi Ξ |
\omicron | ο ο \omicronο οο | \Omicron | O \Omicron O |
\pi | π \pi π | \Pi | Π \Pi Π |
\rho | ρ \rho ρ | \Rho | P \Rho P |
\sigma | σ \sigma σ | \Sigma | Σ \Sigma Σ |
\tau | τ τ \tauτ ττ | \Tau | T \Tau T |
\upsilon | υ \upsilon υ | \Upsilon | Υ \Upsilon Υ |
\varphi | φ \varphi φ | \Phi | Φ \Phi Φ |
\chi | χ \chi χ | \Chi | X \Chi X |
\psi | ψ \psi ψ | \Psi | Ψ \Psi Ψ |
\omega | ω \omega ω | \Omega | Ω \Omega Ω |
amsmath 是基本的数学工具包,在包含数学公式的文档中几乎无处不在。mathtools 则对 amsmath 做了一些补充和增强。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{mathtools}
\begin{document}
\begin{align*}
2^5 &= (1+1)^5 \\
&= \begin{multlined}[t]
\binom50\cdot 1^5 + \binom51\cdot 1^4 \cdot 1
+ \binom52\cdot 1^3 \cdot 1^2 \\
+ \binom53\cdot 1^2 \cdot 1^3
+ \binom54\cdot 1 \cdot 1^4 + \binom55\cdot 1^5
\end{multlined} \\
&= \binom50 + \binom51 + \binom52 + \binom53
+ \binom54 + \binom55
\end{align*}
\end{document}
表格
1. 导入宏包
\usepackage{booktabs} % 导入表线控制的宏包
\usepackage{array} % 导入表列格式的宏包,用于调整文本单元格宽度
\usepackage{caption} % 用于标题需要的宏包
\usepackage{graphicx} %用于调整表格自定义大小
\usepackage{threeparttable} % 用于表格注解的宏包
2. 普通表
所谓表格即使用 横竖线 将文本框起来。
在LaTex中,使用 tabular 的环境。
\begin{
tabular}{
|c|c|c|c|r|l|}
\hline % 其中,|c|表示文本居中,文本两边有竖直表线。
aaa & bbb & ccc & ddd & eee & fff \\ \hline
1 & 2 & 3 & 4 & 5 & 6 \\ \hline
7 & 8 & 9 & 10 & 11 & 12 \\ \hline
13 & 14 & 15 & 16 & 17 & 18 \\ \hline
\end{
tabular}
3. 三线表
\begin{tabular}{ccc}% 其中,tabular是表格内容的环境;c表示centering,即文本格式居中;c的个数代表列的个数
\toprule[2pt] %[4pt]设置线宽
a & b & c \\ %换行
\midrule[1pt]
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9 \\
\bottomrule[2pt]
\end{tabular}
4. 表头、位置、字号
由于需要对表格的整体进行调整,在这我们加上一个table的环境,方便操作。
\begin{table}[!ht]
% 表格整体相关设置
\begin{tabular}{|c|c|c|c|r|l|}
% 表格内容
\end{tabular}
% 表格整体相关设置
\end{table}
\centering
代表紧跟的所有内容都居中显示\caption{...}
显示表格的标题\resizebox{\textwidth}{!}{}
设置表格的宽度\begin{table}[!ht]......\end{table}
设置表格的位置{\large1}
代表1的小四字号
\begin{table}[!ht] % [!ht]表格在文本中放置的位置参数,尽量放当前位置,否则下页顶部
\centering
\caption{标题}
\resizebox{\textwidth}{!}{
\begin{tabular}{|c|c|c|c|r|l|}
\hline % 其中,|c|表示文本居中,文本两边有竖直表线。
aaa & bbb & ccc & ddd & eee & fff \\ \hline
{\large1} & 2 & 3 & 4 & 5 & 6 \\ \hline
7 & 8 & 9 & 10 & 11 & 12 \\ \hline
13 & 14 & 15 & 16 & 17 & 18 \\ \hline
\end{tabular}
}
\end{table}
5. 表格注解
\begin{threeparttable}...\end{threeparttable}
用于表格注解
\begin{table}[!ht] % [!ht]表格在文本中放置的位置参数,尽量放当前位置,否则下页顶部
\centering
\caption{标题}
\resizebox{\textwidth}{!}{
\begin{threeparttable}
\begin{tabular}{|c|c|c|c|r|l|}
\hline % 其中,|c|表示文本居中,文本两边有竖直表线。
aaa & bbb & ccc & ddd & eee & fff \\ \hline
{\large1} & 2 & 3 & 4 & 5 & 6 \\ \hline
7 & 8 & 9 & 10 & 11 & 12 \\ \hline
13 & 14 & 15 & 16 & 17 & 18 \\ \hline
\end{tabular}
注:这是注解。
\end{threeparttable}
}
\end{table}
表格利器
使用下面的表格生成器,可以在线生成表格代码:
https://www.tablesgenerator.com/latex_tables
功能各异的表格宏包
单元格处理:multirow、makecell
长表格:longtable、xtab
定宽表格:xtabular
表线控制:booktabs、hhline、arydshln
综合应用:tabu
插入图片
插入图片分为两种:
- 事先已经准备好图片
- 使用 LaTex 代码,直接在文档中画图
下面以 事先准备好的图片 为例进行说明。
1. 导入宏包
% 导言区
\usepackage{graphicx}
2. 正文插入
\includegraphics[<opt>]{<filename>}
- 第一个参数为可选参数,用于对图片的格式进行调整。
比如,图片的高度、宽度、缩放、角度等。 - 第二个参数为路径名。
% 原图
\includegraphics[]{1.jpg}
\includegraphics[]{2.png}
% 缩放
\includegraphics[scale=0.3]{1.jpg}
\includegraphics[scale=0.5]{2.png}
% 指定高度 宽度自动调整
\includegraphics[height=3cm]{1.jpg}
% 指定宽度 高度自动调整 宽度为3厘米
\includegraphics[width=3cm]{1.jpg}
% 指定高度比例 宽度自动调整 高度为文本行宽的50%
\includegraphics[height=0.5\textheight]{2.png}
% 指定宽度比例 高度自动调整
\includegraphics[width=0.5\textwidth]{2.png}
% 指定旋转角度
\includegraphics[angle=45,height=0.5\textheight]{1.jpg}
3. 浮动体
使用 figure 的浮动体环境,使用figure表示的是把我们这个东西看成一个段落,并且是没有任何缩进的。
\centering
代表紧跟的所有内容都居中显示\caption
设置图片的一个编号以及为图片添加标题\label
是用来链接的\ref
是用来引用的,引用的内容为标签名
% 浮动体
\begin{figure}[ht]
% 居中显示
\centering
\includegraphics[height=0.5\textheight]{2.png}
\caption{figuretest clock}
\label{fig:label}
\end{figure}
Figure \ref{fig:label} is very good.
4. 建立图片分组
一般在软件开发过程中,我们通常会把图片存放在某个特定的文件夹内。
\graphicspath{
{figs/}}
表示存放图片的路径
% 导言区
\graphicspath{
{images/}} % images为存放图片的文件夹名
% 正文区
\includegraphics[angle=45,height=0.5\textheight]{...} % ...用 images 文件夹下的图片文件名替换
参考文献
在LaTex中,参考文献的引用较为简单。
1. 选择引用格式
找到论文的引用格式,选择BibTex格式。
2. 建立 .bib 文件
将 上面的格式 直接复制到 .bib 文件中。
紧接着大括号的是:标签,
title:论文题目,
author:论文作者,
journal:论文发布期刊、会议或者所属,有些论文用booktitle,
volume:卷,
number:号,
pages:页码,
year:年份。
3. 导入宏包
% 导言区
\usepackage{cite}
4. 在文章中插入参考文献
在某个需要的地方,插入参考文献
使用方法如下:
% 正文区
% ... 修改为 标签
% \textsuperscript{\cite{...}}
\textsuperscript{\cite{ripoll2002wp1}}
5. 插入文献格式和文件
使用方法如下: 在 \end{document}前面加上下面代码
\bibliographystyle{...}
\bibliography{document} % document 可以修改,即为 .bib 文件的文件名
\bibliographystyle{...}
是插入参考文献的样式,不同的杂志期刊的样式不一样。常见的预设样式的可选项有6种,分别是:
- plain:按字母的顺序排列,比较次序为作者、年度和标题;
- unsrt:样式同plain,只是按照引用的先后排序;
- abbrv:类似plain,将月份全拼改为缩写,更显紧凑;
- ieeetr:国际电气电子工程师协会期刊样式;
- acm:美国计算机学会期刊样式;
- siam:美国工业和应用数学学会期刊样式;
\bibliography{document}
的作用是插入document.bib 文件