LaTeX 速查手册

LaTeX 简介

LaTeX\LaTeX(LaTeX,音译“拉泰赫”)是一种基于 ΤΕΧ 的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在 20 世纪 80 年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由TeX\TeX 所提供的强大功能,能在几天、甚至几小时内生成很多具有书籍质量的印刷品。

它构筑在Plain TeXPlain \space \TeX 的基础之上,并加进了很多的功能以使得使用者可以更为方便的利用TeX\TeX 的强大功能。使用LaTeX\LaTeX 基本上不需要使用者自己设计命令和宏等,因为LaTeX\LaTeX 已经替你做好了。

LaTeX\LaTeX 是 TEX 中的一种格式(format),是建立在TeX\TeX 基础上的宏语言,也就是说,每一个TeX\TeX 命令实际上最后都会被转换解释成几个甚至上百个TeX\TeX 命令。

但是,普通用户可以无需知道这中间的复杂联系。就像编程的时候如果使用一些已经编译好的函数库和模板可以使我们仅仅用几个命令就实现很多功能一样,LaTeX\LaTeX 根据人们排版文章的习惯,定义了许多命令和模板,通过这些命令和模板,我们可以很快的得到漂亮的排版结果。

Word VS LaTeX


LaTeX 速查手册

usepackage

\usepackage 是 LaTeX 的一个命令,用于调用宏包。宏包是一些预先定义好的命令和环境的集合,可以扩展 LaTeX 的功能。

1
\usepackage[options]{package}

其中,options 是可选参数,package 是宏包的名称。

类似于 C 语言中的 #include,或者 Python 中的 import

documentclass

\documentclass 是 LaTeX 的一个命令,用于指定文档的类型。

1
\documentclass[options]{class}

其中,options 是可选参数,class 是文档的类型。

除了 LaTeX 本身提供的文档类型,还可以新建 .cls 文件,自定义文档类型。

上标 ^ 和 下标 _

  • AbcA_b^c: A_b^c
  • AbcdefA_{bc}^{def}: A_{bc}^{def}

如果上下标的字符不止一个,则需要加大括号。

  • 组合数(nk)\binom{n}{k}: \binom{n}{k} 或者 {n \choose k}

分数与开方

高度自适应的分数 (行内较矮,行间较高)ab\frac{a}{b}: \frac{a}{b}
强制较高的分数ab\dfrac{a}{b}: \dfrac{a}{b}
强制较低的分数ab\tfrac{a}{b}: \tfrac{a}{b}
开方a\sqrt{a}: \sqrt{a}an\sqrt[n]{a}: \sqrt[n]{a}

运算符

符号LaTeX 命令
++-+-
±\pm\mp\pm\mp
×\times÷\div\times\div
\odot\oplus\otimes\odot\oplus\otimes
==\neq=\neq
\sim\backsim\sim\backsim
\approx\cong\approx\cong
\equiv\simeq\equiv\simeq
<<>><>
\leq\geq\leq\geq
\leqslant\geqslant\leqslant\geqslant 需 amssymb 宏包
\ll\gg\ll\gg
\subset\supset\subset\supset
\subseteq\supseteq\subseteq\supseteq
\in\ni\in\ni
\notin\notni\notin\notni
\cap\cup\cap\cup
\land\lor\land\lor
\int\iint\iiint\int\iint\iiint
\oint\oiint\oiiint\oint\oiint\oiiint

修改大于等于号、小于等于号样式可以使用 \renewcommand 命令:

1
2
3
\usepackage{amssymb}
\renewcommand{\leq}{\leqslant}
\renewcommand{\geq}{\geqslant}

特殊符号(转义)显示

符号LaTeX 命令
$\$#\#%\%&\&\$\#\%\&
{\{}\}\{\}
_\_\_
ˆ\text{\^{}}\^{}
\sim\~{}\sim
\\backslash\backslash
@@@

其他符号与图形

符号LaTeX 命令
\forall\exists\forall\exists
\nablaΔ\Delta\nabla\Delta
\cdot\circ\bullet\cdot\circ\bullet
\cdots\vdots\ddots\cdots\vdots\ddots
\hbar\hbar
\partial\partial
\infty\infty
\angle\angle
\varnothing\varnothing
\bot\top\bot\top
\triangle\square\triangle\square

极限、连加、连乘、积分

  • limx\lim_{x \to \infty}: \lim_{x \to \infty}
  • i=1n\sum_{i=1}^{n}: \sum_{i=1}^{n}
  • i=1n\prod_{i=1}^{n}: \prod_{i=1}^{n}
  • 0+\int_{0}^{+\infty}: \int_{0}^{+\infty}

以上代码在行内公式中效果如上,如果在行间公式中,效果如下:

limxi=1ni=1n0+\lim _{x \to \infty}\quad\sum_{i=1}^{n}\quad\prod_{i=1}^{n}\quad\int_{0}^{+\infty}

如果要在行内显示跟行间一样的效果,则需要加上 \limits 或 {\displaystyle},如下:

符号LaTeX 命令
limx\lim\limits_{x \to \infty}limx{\displaystyle \lim_{x \to \infty}}\lim\limits_{x \to \infty}${\displaystyle \lim_{x \to \infty}}$
i=1n\sum\limits_{i=1}^{n}i=1n{\displaystyle \sum_{i=1}^{n}}\sum\limits_{i=1}^{n}${\displaystyle \sum_{i=1}^{n}}$
i=1n\prod\limits_{i=1}^{n}i=1n{\displaystyle \prod_{i=1}^{n}}\prod\limits_{i=1}^{n}${\displaystyle \prod_{i=1}^{n}}$
0+\int\limits_{0}^{+\infty}0+{\displaystyle \int_{0}^{+\infty}}\int\limits_{0}^{+\infty}${\displaystyle \int_{0}^{+\infty}}$

多重极限

limxx0yy0\lim\limits_{x\to x_0 \atop y\to y_0}: \lim\limits_{x\to x_0 \atop y\to y_0}
limww0xx0yy0zz0\lim\limits_{\substack{w\to w_0\\ x\to x_0\\ y\to y_0\\ z\to z_0}}: \lim\limits_{\substack{w\to w_0\\ x\to x_0\\ y\to y_0\\ z\to z_0}}

括号

  • ()\left( \right): \left( \right)
  • []\left[ \right]: \left[ \right]
  • {}\left\{ \right\}: \left\{ \right\}
  • \left| \right|: \left| \right|

直接使用 ()、[]、{},括号的高度不会随着括号中的内容高度变化,比如(34)2(\frac{3}{4})^2[π26][\frac{\pi^2}{6}]{π390}\{\frac{\pi^3}{90}\}π41024|\frac{\pi^4}{1024}|

使用 \left 和 \right,括号的高度会随着括号中的内容高度变化,比如(34)2\left(\frac{3}{4}\right)^2[π26]\left[\frac{\pi^2}{6}\right]{π390}\left\{\frac{\pi^3}{90}\right\}π41024\left|\frac{\pi^4}{1024}\right|

公式

行内公式

行内公式使用 $ $ 包裹,比如 $\frac{a}{b}$

行间公式

行间公式使用 $$ $$\[ \] 包裹,比如 $$\frac{a}{b}$$\[ \frac{a}{b} \]

这两种环境仅支持单行公式,换行符在其中无效。

公式环境

行间公式还可以用 \begin{环境名} \end{环境名} 来包裹,其中环境名可以是:

1
2
align(*), alignat(*), flalign(*)
equation(*), gather(*), ...

其中,带 * 的环境不会对公式进行编号,不带 * 的环境会对公式进行编号,使用 \notag\nonumber 可以取消一行公式的编号。

equation(*) 也只能输入单行公式,换行符在其中无效,但在其中嵌入 split 环境后就能输入多行公式了,好处是多行公式只有一个编号。

1
2
3
4
5
6
7
8
\begin{equation}
\begin{split}
&\ x^4+2x^3+11x^2+18x+18 \\
= &\ (x^2+2x+2)(x^2+9) \\
= &\ (x^2+x+3)^2+(2x+3)^2
\end{split}
\label{eq:1}
\end{equation}

 x4+2x3+11x2+18x+18= (x2+2x+2)(x2+9)= (x2+x+3)2+(2x+3)2\begin{equation} \begin{split} &\ x^4+2x^3+11x^2+18x+18 \\ = &\ (x^2+2x+2)(x^2+9) \\ = &\ (x^2+x+3)^2+(2x+3)^2 \end{split} \end{equation}

使用 \label{eq:1} 给公式添加标签,使用 \ref{eq:1} 引用公式(的编号),使用 \pageref{eq:1} 引用公式所在的页码。

\usepackage{hyperref} 可以使这些引用变成可点击跳转的超链接。

alignatalign 环境区别如下,align 整体稍微宽一点(不明显):

1
2
3
4
\begin{alignat*}{3}
2x+3 &= 5678y-8765z &+ 20 \\
4x &= y+z &+ 11112222
\end{alignat*}

2x+3=5678y8765z+204x=y+z+11112222\boxed{ \begin{alignat*}{3} 2x+3 &= 5678y-8765z &+ 20 \\ 4x &= y+z &+ 11112222 \end{alignat*} }

1
2
3
4
\begin{align*}
2x+3 &= 5678y-8765z &+ 20 \\
5x &= y+z &+ 33334444
\end{align*}

2x+3=5678y8765z+205x=y+z+33334444\boxed{ \begin{align*} 2x+3 &= 5678y-8765z &+ 20 \\ 5x &= y+z &+ 33334444 \end{align*} }

gather(*) 环境中不能出现对齐符号 &,否则报错。此环境下所有行的公式全部居中对齐。

1
2
3
4
\begin{gather*}
2x+3 = 5678y-8765z + 20 \\
6x = y+z + 55556666
\end{gather*}

2x+3=5678y8765z+206x=y+z+55556666\boxed{ \begin{gather*} 2x+3 = 5678y-8765z + 20 \\ 6x = y+z + 55556666 \end{gather*} }

cases 环境对于带左大括号的情形特别有用,比如分段函数、方程联立等。

1
2
3
4
5
6
\begin{align*}
\begin{cases}
2x+3y=7 \\
3x+5y=8
\end{cases}
\end{align*}

{2x+3y=73x+5y=8\boxed{ \begin{align*} \begin{cases} 2x+3y=7 \\ 3x+5y=8 \end{cases} \end{align*} }

虽然用:

1
2
3
4
5
6
7
8
\begin{align*}
\left\{
\begin{aligned}
& 2x+3y=7 \\
& 3x+5y=8
\end{aligned}
\right.
\end{align*}

也能实现相同的效果,但是显然 cases 环境更简洁。

公式环境中要加汉字,则必须置于 \text{} 之内。

实现文本居中对齐使用 center 环境:

1
2
3
\begin{center}

\end{center}

以上给公式外围加边框用的是:

1
2
3
\boxed{

}

章节序号

想让公式编号带上“章”序号或“节”序号,可使用:

1
2
\numberwithin{equation}{chapter}
\numberwithin{equation}{section}

不想让公式、表格、图片带上章号、节号,可使用:

1
2
3
\usepackage{chngcntr}
\counterwithout{equation}{chapter}
\counterwithout{equation}{section}

其中的 equation 还可以换成 tablefigure

\usepackage{chngcntr} 不能与 \usepackage[leqno]{amsmath} 同时使用,否则会报错:Option clash for package amsmath.

但可以用 \usepackage{amsmath},加 [leqno] 的效果是让公式编号位于左侧,如果要实现这一效果,可以使用 \documentclass[a4paper,leqno]{article} 更改编号样式:

1
2
\renewcommand{\thetable}{\Roman{table}}
\renewcommand{\thefigure}{\Roman{figure}}

对齐方式

要让全文的行间公式居左 (默认是居中),使用:

1
\usepackage[fleqn]{amsmath}

如果同时需要公式编号在左侧,那么使用:

1
\usepackage[leqno ,fleqn]{amsmath}

如果只想要让单个公式居左,使用:

1
2
3
\begin{flalign}
E=mc^2 &&
\end{flalign}

特别注意最后的两个对齐符号 &&,如果漏掉,则没有居左的效果。

矩阵和行列式

(a11a12a21a22)\begin{pmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{pmatrix}

1
2
3
4
\begin{pmatrix}
a_{11} & a_{12} \\
a_{21} & a_{22}
\end{pmatrix}

[a11a12a21a22]\begin{bmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{bmatrix}bmatrix 环境,a11a12a21a22\begin{vmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{vmatrix}vmatrix 环境,a11a12a21a22\begin{matrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{matrix}matrix 环境,{a11a12a21a22}\begin{Bmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{Bmatrix}Bmatrix 环境,a11a12a21a22\begin{Vmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{Vmatrix}Vmatrix 环境。

三种省略号:\cdots \cdots\vdots \vdots\ddots \ddots

函数

1
2
3
4
\arg, \exp, \inf, \sup, \max, \min
\sin, \sinh, \arcsin, \cos, \cosh, \arccos
\tan, \tanh, \arctan
\log, \ln, \lg, \deg, \det, \dim

这些函数只能在公式环境中使用,而且字体是正体,如果不在前面加 \,直接输入 sincoslog,字体就是斜体。

特殊字母

公式环境中,某些特殊含义的字母需要用正体而非斜体,比如自然对数底数e\mathrm{e},虚数单位i\mathrm{i} 和微分符号d\mathrm{d},使用 \mathrm{} 包裹即可,比如:

1
2
3
4
5
6
\begin{align*}
\mathrm{e}^{\mathrm{i}\theta}=
\cos\theta+{\mathrm{i}}\sin\theta \\
\int_0^{+\infty}\frac{x}{\mathrm{e}^x
-1}\mathrm{d}x=\frac{\pi^2}{6}
\end{align*}

eiθ=cosθ+isinθ0+xex1dx=π26\begin{align*} \mathrm{e}^{\mathrm{i}\theta}= \cos\theta+{\mathrm{i}}\sin\theta \\ \int_0^{+\infty}\frac{x}{\mathrm{e}^x -1}\mathrm{d}x=\frac{\pi^2}{6} \end{align*}

公式环境下e\mathrm{e}i\mathrm{i}d\mathrm{d} 都不用正体的效果是:eeiidd

newcommand

\newcommand{}{} 是 LaTeX 的一个命令,用于定义新的命令。

1
\newcommand{\commandname}{definition}

其中,commandname 是命令的名称,definition 是命令的定义。

类似于 C 语言中的 #define

比如嫌 \quad 太麻烦,可以先:

1
\newcommand{\q}{\quad}

然后就可以使用 \q 代替 \quad 了。

希腊字母

字母名小写LaTeX 命令大写LaTeX 命令变量形式LaTeX 命令
阿尔法α\alpha\alphaA\Alpha\Alpha
贝塔β\beta\betaB\Beta\Beta
伽马γ\gamma\gammaΓ\Gamma\Gamma
德尔塔δ\delta\deltaΔ\Delta\Delta
艾普西隆ϵ\epsilon\epsilonE\Epsilon\Epsilonε\varepsilon\varepsilon
泽塔ζ\zeta\zetaZ\Zeta\Zeta
伊塔η\eta\etaH\Eta\Eta
西塔θ\theta\thetaΘ\Theta\Thetaϑ\vartheta\vartheta
约塔ι\iota\iotaI\Iota\Iota
卡帕κ\kappa\kappaK\Kappa\Kappa
拉姆达λ\lambda\lambdaΛ\Lambda\Lambda
μ\mu\muM\Mu\Mu
ν\nu\nuN\Nu\Nu
克西ξ\xi\xiΞ\Xi\Xi
奥密克戎ο\omicron\omicronO\Omicron\Omicron
π\pi\piΠ\Pi\Piϖ\varpi\varpi
ρ\rho\rhoP\Rho\Rhoϱ\varrho\varrho
西格马σ\sigma\sigmaΣ\Sigma\Sigmaς\varsigma\varsigma
τ\tau\tauT\Tau\Tau
宇普西隆υ\upsilon\upsilonΥ\Upsilon\Upsilon
ϕ\phi\phiΦ\Phi\Phiφ\varphi\varphi
χ\chi\chiX\Chi\Chi
普西ψ\psi\psiΨ\Psi\Psi
欧米伽ω\omega\omegaΩ\Omega\Omega

字母上下符号

符号LaTeX 命令
a\overline{a}a\underline{a}\overline{a}\underline{a}
a\overbrace{a}a\underbrace{a}\overbrace{a}\underbrace{a}
a\overleftarrow{a}a\overrightarrow{a}a\overleftrightarrow{a}\overleftarrow{a}\overrightarrow{a}\overleftrightarrow{a}
a\underleftarrow{a}a\underrightarrow{a}a\underleftrightarrow{a}\underleftarrow{a}\underrightarrow{a}\underleftrightarrow{a}
ab\stackrel{b}{a}ab\overset{b}{a}ab\underset{b}{a}\stackrel{b}{a}\overset{b}{a}\underset{b}{a}
aˊ\acute{a}aˋ\grave{a}\acute{a}\grave{a}
aˉ\bar{a}a\vec{a}a˘\breve{a}\bar{a}\vec{a}\breve{a}
a~\tilde{a}abc~\widetilde{abc}\tilde{a}\widetilde{abc}
a^\hat{a}abc^\widehat{abc}\hat{a}\widehat{abc}
aˇ\check{a}abcˇ\widecheck{abc}\check{a}\widecheck{abc}
a˙\dot{a}a¨\ddot{a}\dot{a}\ddot{a}

中文下划线与删除线

需要使用 ulem 宏包。

符号LaTeX 命令
单下划线\uline{单下划线}
双下划线\uuline{双下划线}
波浪线\uwave{波浪线}
虚下划线\udash{虚下划线}
点下划线\dotuline{点下划线}
删除线\sout{删除线}

箭头

符号LaTeX 命令
\to\gets\to\gets
\rightarrow\leftarrow\rightarrow\leftarrow
\Rightarrow\Leftarrow\Rightarrow\Leftarrow
\longrightarrow\longleftarrow\longrightarrow\longleftarrow
\Longrightarrow\Longleftarrow\Longrightarrow\Longleftarrow
\mapsto\mapsto
\hookrightarrow\hookleftarrow\hookrightarrow\hookleftarrow
\rightharpoonup\leftharpoonup\rightharpoonup\leftharpoonup
\rightharpoondown\leftharpoondown\rightharpoondown\leftharpoondown
\rightleftharpoons\rightleftharpoons
\uparrow\downarrow\uparrow\downarrow
\Uparrow\Downarrow\Uparrow\Downarrow
\updownarrow\updownarrow
\nearrow\searrow\nearrow\searrow
\swarrow\nwarrow\swarrow\nwarrow
\leadsto\leadsto

表格

三线表,需要使用 booktabs 宏包和 tabularx 宏包。

1
2
3
4
5
6
7
\usepackage{booktabs}  % 三线表宏包
\usepackage{tabularx} % tabularx环境宏包

% 定义表格列格式
\newcolumntype{C}{>{\centering\arraybackslash}X}
\newcolumntype{R}{>{\raggedleft\arraybackslash}X}
\newcolumntype{L}{>{\raggedright\arraybackslash}X}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
\begin{table}[htbp]
\caption{表格标题}
\centering
\renewcommand{\arraystretch}{1} % 表格行间的宽度
\begin{tabularx}{\textwidth}{CCC}
\toprule % 顶部线
\textbf{第一列} & \textbf{第二列} & \textbf{第三列} \\
\midrule % 中部线
A & 1 & 4 \\
B & 2 & 5 \\
C & 3 & 6 \\
\bottomrule % 底部线
\end{tabularx}
\label{tab:1}
\end{table}

表格

图片

1
\usepackage{graphicx}
1
2
3
4
5
6
\begin{figure}[htbp]
\centering
\includegraphics[width=0.8\textwidth]{image.png}
\caption{图片标题}
\label{fig:1}
\end{figure}

位置控制:

位置说明
hhere
ttop
bbottom
HHere,比 h 更强制,需要 \usepackage{float}
ppage containing only floats, such as figures and tables.
!allows to ignore certain parameters of LaTeX for float placement.

宽度控制:

  • \linewidth:当前行的宽度
  • \columnwidth:当前分栏的宽度
  • \textwidth:整个页面版芯的宽度
  • \paperwidth:整个页面纸张的宽度

页眉页脚

1
\usepackage{fancyhdr}
1
2
3
4
5
6
7
\pagestyle{fancy}
\lhead{ 左页眉 }
\chead{ 中页眉 }
\rhead{ 右页眉 }
\lfoot{ 左页脚 }
\cfoot{ 中页脚 }
\rfoot{ 右页脚 }

水印

1
2
3
4
5
6
7
\usepackage{draftwatermark}
\usepackage{everypage}
\SetWatermarkText{ 水印文本 }
\SetWatermarkLightness{0} % 亮度
\SetWatermarkAngle{45} % 旋转角度
\SetWatermarkColor{gray} % 颜色
\SetWatermarkScale{0.5} % 缩放比例

脚注

1
\footnote{ 脚注内容 }

空白页

1
2
3
\newpage
\clearpage
\cleardoublepage

目录

1
2
3
\tableofcontents  % 生成目录
\setcounter{tocdepth}{3} % 设置目录深度
\setcounter{secnumdepth}{3} % 设置编号深度

文本控制

字体大小

命令说明示例
\tiny最小字体大小\tiny{\text{字体大小}}
\scriptsize极小字体大小\scriptsize{\text{字体大小}}
\footnotesize很小字体大小\footnotesize{\text{字体大小}}
\small较小字体大小\small{\text{字体大小}}
\normalsize正常字体大小\normalsize{\text{字体大小}}
\large较大字体大小\large{\text{字体大小}}
\Large很大字体大小\Large{\text{字体大小}}
\LARGE极大字体大小\LARGE{\text{字体大小}}
\huge巨大字体大小\huge{\text{字体大小}}
\Huge最大字体大小\Huge{\text{字体大小}}

文本行间距

1
\linespread{1.3}  % 需放在 \begin{document} 之前

粗体与斜体

1
2
\textbf{abc}  % 粗体
\textit{abc} % 斜体,只对英文有效

同时使用粗体和斜体:

1
\textbf{\textit{abc}}

字体族

1
\usepackage{fontspec}

设置英文字体:

1
\setmainfont{Microsoft YaHei}

设置 C(中文)、J(日文)、K(韩文) 字体:

1
2
3
\setCJKmainfont{SimSun}  % 宋体
\setCJKmainfont{SimHei} % 黑体
\setCJKmainfont{KaiTi} % 楷体
局部修改
1
2
3
\newfontfamily{\consolas}{Consolas}

{\consolas text}

字体颜色

1
\textcolor{颜色}{ 文本内容 }

章节

命令说明
\part{}分卷
\chapter{}
\section{}节/一级标题
\subsection{}小节/二级标题
\subsubsection{}小小节/三级标题

列表

无序列表

1
2
3
4
5
6
\begin{itemize}
\item
\item
\item
\item
\end{itemize}

有序列表

1
2
3
4
5
6
7
\usepackage{enumerate}
\begin{enumerate}[1.] % 可自定义编号样式
\item
\item
\item
\item
\end{enumerate}

常用长度单位

  • pt:point,磅,1pt=0.351mm
  • mm:millimeter,毫米
  • cm:centimeter,厘米
  • in:inch,英寸,1in=25.4mm
  • ex:当前字体中字母 x 的高度
  • em:当前字体中字母 M 的宽度

英文字母变体

\mathcal{},只对大写字母有效:

ABCDEFGHIJKLMNOPQRSTUVWXYZ\mathcal{ABCDEFGHIJKLMNOPQRSTUVWXYZ}

\mathscr{},只对大写字母有效,需 \usepackage{mathrsfs}

ABCDEFGHIJKLMNOPQRSTUVWXYZ\mathscr{ABCDEFGHIJKLMNOPQRSTUVWXYZ}

\mathbb{},只对大写字母有效,需 \usepackage{amssymb}

ABCDEFGHIJKLMNOPQRSTUVWXYZ\mathbb{ABCDEFGHIJKLMNOPQRSTUVWXYZ}

\mathfrak{},对大小写字母都有效,需 \usepackage{amssymb}

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\begin{align*} \mathfrak{ABCDEFGHIJKLMNOPQRSTUVWXYZ} \\ \mathfrak{abcdefghijklmnopqrstuvwxyz} \end{align*}

多栏

1
\usepackage{multicol}
1
2
3
4
5
6
7
\begin{multicols}{2}  % 2 表示分两栏
...

\columnbreak % 分栏分隔符

...
\end{multicols}
1
\columnseprule 1pt  % 显示分栏分隔线并设置线宽
1
\columnsep 20pt  % 设置分栏间距

代码

1
\usepackage{listings}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
% 设置代码样式
\lstset
{
tabsize=4,
captionpos=b,
numbers=left,
numbersep=1em,
sensitive=true,
showtabs=false,
frame=shadowbox,
breaklines=true,
keepspaces=true,
showspaces=false,
showstringspaces=false,
breakatwhitespace=false,
basicstyle=\yaheiconsola,
keywordstyle=\color{NavyBlue},
commentstyle=\color{codegreen},
numberstyle=\color{gray},
stringstyle=\color{PineGreen!90!black},
rulesepcolor=\color{red!20!green!20!blue!20}
}
1
\lstinputlisting[language=python]{code/main.py}

代码