一文学会LaTeX基础
零、入门
LaTex是一门论文语言,用于清晰地标明论文格式。LaTeX的主体结构分为导言和正文,导言用于喂给编译程序,正文则是文章的具体内容。LaTeX主要有三种编译符号:
- 反斜杠\:后接标签名
- 大括号{}:紧跟标签名,内含标签的补充信息
- 百分号%:用于书写注释
如需将LaTex导出为其他格式访问此处网址
一、导言
文件类型
第一行先标明文件类型。一般文件类型包括book、article等,中文文件类型ctexbook、ctexart
\documentclass{ctexart} %
导入包
使用
\usepackage{package_name_1, package_name_2}
语句来导入包。常用的包有:
- ctex:中文支持
- amsmath:LaTeX数学公式支持
- algorithm、algorithmic、algorithm2e:算法排版
- 其中algorithm2e用于展示伪代码,包括以下标签:
- \;:显示分号并换行
- \caption:显示算法名称
- \KwData、\KwIn、\KwResult、\KwOut:展示输入输出
- \For{}{}、\While{}{}:循环
- \If{}{}、\eIf{}{}:双分支判断语句
- \uIf{}{}、\ElseIf{}{}:多分支判断语句
- \tcc{}、\tcp{}:显示注释
- 其中algorithm2e用于展示伪代码,包括以下标签:
- listings:插入代码块
注明文章信息
- \title{} :设置标题
- \author{} :设置作者信息
- \date{} :设置日期,特别的,使用\today来自动填充今天。
二、符号与字体
2.1 常用希腊字母
希腊字母一共24个,此处摘录其中最常用的12个供查阅,若某一格为横杠表示该写法(至少在CSDN的拼写系统里)不存在。
- 小写字母写法:反斜杠+英文名
- 大写字母写法:反斜杠+首字母大写的英文名
- 变体字写法:在反斜杠后接var再接英文名
英文名 | 读音 | 大写 | 小写 | 变体大写 | 变体小写 |
---|---|---|---|---|---|
alpha | /'ælfə/ | A \Alpha A | α \alpha α | - | - |
beta | /'beɪtə/ | B \Beta B | β \beta β | - | - |
gamma | /'gæmə/ | Γ \Gamma Γ | γ \gamma γ | Γ \varGamma Γ | - |
delta | /'deltə/ | Δ \Delta Δ | δ \delta δ | Δ \varDelta Δ | - |
pi | /paɪ/ | Π \Pi Π | π \pi π | Π \varPi Π | ϖ \varpi ϖ |
sigma | /'sɪɡmə/ | Σ \Sigma Σ | σ \sigma σ | Σ \varSigma Σ | ς \varsigma ς |
theta | /'θi:tə/ | Θ \Theta Θ | θ \theta θ | Θ \varTheta Θ | ϑ \vartheta ϑ |
phi | /faɪ/ | Φ \Phi Φ | ϕ \phi ϕ | Φ \varPhi Φ | φ \varphi φ |
lambda | /'læmdə/ | Λ \Lambda Λ | λ \lambda λ | Λ \varLambda Λ | - |
psi | /psaɪ/ | Ψ \Psi Ψ | ψ \psi ψ | Ψ \varPsi Ψ | - |
mu | /mju:/ | M \Mu M | μ \mu μ | - | - |
omega | /'əʊmɪɡə/ | Ω \Omega Ω | ω \omega ω | Ω \varOmega Ω | - |
rho | /rəʊ/ | P \Rho P | ρ \rho ρ | - | - |
2.2 常用文字符号
符号 | 写法 |
---|---|
∣ \vert ∣ | \vert |
∣ \mid ∣ | \mid |
⋅ \cdot ⋅ | \cdot |
† \dagger † | \dagger |
‡ \ddagger ‡ | \ddagger |
2.3 常用数学符号
2.3.1 集合符号
符号 | 中文名 | 写法 |
---|---|---|
∪ \cup ∪ | 并 | \cup |
∩ \cap ∩ | 交 | \cap |
∈ \in ∈ | 属于 | \in |
⊂ \subset ⊂ | 真子集于 | \subset |
⊆ \subseteq ⊆ | 子集于 | \subseteq |
⋃ \bigcup ⋃ | 连并 | \bigcup |
2.3.2 运算符号
符号 | 中文名 | 写法 |
---|---|---|
× \times × | 叉乘 | \times |
⋅ \cdot ⋅ | 点乘 | \cdot |
∑ \sum ∑ | 求和 | \sum |
∏ \prod ∏ | 连乘 | \prod |
2.3.3 微积分相关
符号 | 中文名 | 写法 |
---|---|---|
∫ \int ∫ | 积分 | \int |
∞ \infty ∞ | 无穷 | \infty |
∂ \partial ∂ | 偏分 | \partial |
∇ \nabla ∇ | 向量微分 | \nabla |
2.3.4 逻辑符号
符号 | 中文名 | 写法 | 备用写法 |
---|---|---|---|
¬ \neg ¬ | 非 | \neg | |
∧ \wedge ∧ | 且 | \wedge | |
∨ \vee ∨ | 或 | \vee | |
∵ \because ∵ | 因为 | \because | |
∴ \therefore ∴ | 所以 | \therefore | |
→ \rightarrow → | 推出 | \to | \rightarrow |
其他常用符号见该网址。
2.4 常用文本字体
示例 | 写法 | 英文全称 | 中文全称 |
---|---|---|---|
L \textrm{L} L | \textrm | Roman | 罗马字体 |
L \textbf{L} L | \textbf | Boldface | 粗体 |
L \textit{L} L | \textit | Italics | 意大利体 |
L \textsf{L} L | \textsf | Sans Serif | 简体 |
L \texttt{L} L | \texttt | Typewrite | 印刷体 |
2.5 数学字体
2.5.1 常用数学字体
示例 | 代码 | 英文全称 | 中文全称 |
---|---|---|---|
L \mathbf{L} L | \mathbf | Math Boldface | 粗体 |
L \mathbb{L} L | \mathbb | Math Blackboard | 黑板字体 |
L \mathcal{L} L | \mathcal | Math Calligraphic | 书法体 |
L \mathscr{L} L | \mathscr | Math Script | 手写体 |
2.5.2 不常用数学字体
示例 | 代码 | 英文全称 | 中文全称 |
---|---|---|---|
L \mathrm{L} L | \mathrm | Math Roman | 罗马字体 |
L \mathsf{L} L | \mathsf | Math Sans Serif | 简体 |
L \mathtt{L} L | \mathtt | Math Typewrite | 印刷体 |
L \mathfrak{L} L | \mathfrak | Math Fraktur | 哥特体 |
三、正文框架
分文档
默认文档后缀为.tex,若不是,则需要附上文档后缀;默认路径为当前目录,若不是,需要相对或绝对路径。
\include{file_name}:导入文档内容并另起一页
\input{file_name}:仅导入文档内容
分章节
- \part{title}:册。一般在书籍中使用该标签,可将一册中的章节重新编号。会给出一整页作为分隔。
- \chapter{title}:章。book、report使用,在article中不使用该标签。
- \section{title}:节。如论文的“概要”、“预备知识”等
- \subsection{title}:小节。
- \subsubsection{title}:小小节。
- \paragraph{title}:段。
- \subparagraph{title}:小段。
使用*号拒绝自动编号,如\section*{参考文献}
封面
\maketitle:会自动根据导言中的文章信息生成封面
目录
\tableofcontents %给出目录
\thispagestyle{empty} %不显示目录页的页码
\newpage %分出新页
\setcounter{page}{1} %将下页页码改为1
分页
\newpage:分出新页,在双栏样板下仅从当前栏分出新栏
\clearpage:分出新页,在双栏样板下分出整页
分块
\par:表示另起一段
分行
双反斜杠(\\)、\newline
三、正文格式
插入图片
导入头文件:
\usepackage{graphicx} % 这个必须有
\usepackage{subfigure}
\usepackage[graphicx]{realboxes} % 这俩也是常用的插入图片的包,但实现以下功能不需要。具体作用自行查询
\begin{figure}[h] % h表示样式,包括h(ere),t(op),b(ottom),p,也可写多个,LaTeX编译器会自动选择其中最合适的;
\centering % 图片居中
\includegraphics[width=12cm]{RealityIdealRatioRouteNum}
% 第一个大括号表示图片样式,此处为宽度,还有height、scale、angle,用逗号分割多个样式(注意加单位,否则会报错)
% 第二个大括号为文件路径,已知支持png、eps等格式
\caption{绕路系数与预计算路径条数间关系图} % 图片名;在caption后加*可不对图片编号
\label{fig:RealityIdealRatio_RouteNum}
\end{figure}
注:使用Overleaf时若打开draft模式是看不到图片的,使用常规模式编译即可看到图片。
引用与标注
引用文献
可能会用到的导入包:
\usepackage{natbib}
\bibliographystyle{plain}
\bibliography{references.bib}
可选的引用样式:
\bibliographystyle{plain} % 按字母的顺序排列,比较次序为作者、年度和标题.
\bibliographystyle{unsrt} % 样式同plain,只是按照引用的先后排序.
\bibliographystyle{alpha} % 用作者名首字母+年份后两位作标号,以字母顺序排序.
\bibliographystyle{abbrv} % 类似plain,将月份全拼改为缩写,更显紧凑.
\bibliographystyle{ieeetr} % 国际电气电子工程师协会期刊样式.
\bibliographystyle{acm} % 美国计算机学会期刊样式.
\bibliographystyle{siam} % 美国工业和应用数学学会期刊样式.
\bibliographystyle{apalike} % 美国心理学学会期刊样式.
在你的.bib文件中添加bib格式的引用条目格式如下:
@article{CitLabel,
...
}
然后在正文中添加引用:
\cite{CiteLabel}
文内交叉引用
\section{title}\label{sec:nothing}
...
\ref{sec:nothing}
图注
图片\caption{注释内容}
脚注
正文内容\footnote{脚注内容}
居中、居左、居右
\begin{center}
此段文字居中
\end{center}
\begin{flushleft}
此段文字居左
\end{flushright}
\begin{flushright}
此段文字居右
\end{flushright}
列表
有序列表
\begin{enumerate}
\item 会显示1作为标序
\item[2*] 会用方括号内文字代替标序
\end{enumerate}
无序列表
\begin{itemize}
\item 会显示一个小圆点
\item[2*] 会用方括号内文字代替小圆点
\end{itemize}
命名列表
\begin{description} % 强制要求每个item都带方括号
\item[One] 会显示One作为标序
\item[TWO] 会显示TWO作为标序
\end{description}
表格
\begin{table}[h] % h表示here,即插入位置;还有t和b,分别表示top和bottom,即该页的顶部和底部
\begin{center}
\caption{常用记号} % 标题
\begin{tabular}{c|m{2cm}<{\centering}} % c表示行内内容居中,还有l和r分别表示行内内容居左或居右;竖线表示行间分割线;m需要导入array包,表示上下居中,大括号内为列宽,后面一串表示居中(我也不知道为什么非得这样写才能设置列宽)
\hline % 画一条水平直线先
$Z$&整数集\\ % &符表示行间竖线位置
$N$&自然数集\\
$Z_+$/$N_+$&正整数集\\
$\emptyset$&空集
\end{tabular}
\end{center}
\end{table}
公式
直接把Markdown的双dollar符公式粘贴过去就行,但是发现不能使用双反斜杠换行,故改用LaTeX的以下排版格式:
\begin{align*} % 加*意为不带行号
\end{align*}
\begin{equation*}
\begin{aligned}
\end{aligned}
\end{equation*}
伪代码
需要导入头文件
\usepackage[ruled,linesnumbered]{algorithm2e}
样例如下:
\begin{algorithm}
\caption{Simulation-optimization heuristic}\label{algorithm}
\KwData{current period $t$, initial inventory $I_{t-1}$, initial capital $B_{t-1}$, demand samples}
\KwResult{Optimal order quantity $Q^{\ast}_{t}$}
$r\leftarrow t$\;
$\Delta B^{\ast}\leftarrow -\infty$\;
\While{$\Delta B\leq \Delta B^{\ast}$ and $r\leq T$}{$Q\leftarrow\arg\max_{Q\geq 0}\Delta B^{Q}_{t,r}(I_{t-1},B_{t-1})$\;
$\Delta B\leftarrow \Delta B^{Q}_{t,r}(I_{t-1},B_{t-1})/(r-t+1)$\;
\If{$\Delta B\geq \Delta B^{\ast}$}{$Q^{\ast}\leftarrow Q$\;
$\Delta B^{\ast}\leftarrow \Delta B$\;}
$r\leftarrow r+1$\;}
\end{algorithm}
四、与Markdown区别的记号
- \exists: ∃ \exists ∃,别忘了最后的小写s
- \emptyset: ∅ \emptyset ∅,不支持Markdown支持的\empty、\varnothing