本文转自洛谷的GitHub仓库
$\text{SiYuan}$ ==不支持==部分特性
编写者注释:==为了保证查看的美观及便捷,请在所有的公式前使用
\displaystyle{}包裹或者使用行间公式==示例:
$\displaystyle{\frac{1}{2}}$显示为:$\displaystyle{\frac{1}{2}}$综上:公式模板为
$\displaystyle{}$
$\LaTeX$ 是一种基于 $\TeX$ 的排版系统,能够很方便的生成数学公式。
这里的大多数地方使用 $\LaTeX$ 进行渲染,可以参照文档:
https://katex.org/docs/supported.html。
常用内容
Letters and Unicode
Greek Letters
Direct Input: ABΓΔEZHΘIKΛMNΞOΠPΣTΥΦXΨΩABΓΔEZHΘIKΛMNΞOΠPΣTΥΦXΨΩ αβγδϵζηθικλμνξoπρστυϕχψωεϑϖϱςφϝαβγδϵζηθικλμνξoπρστυϕχψωεϑϖϱςφϝ
AA \Alpha | BB \Beta | ΓΓ \Gamma | ΔΔ \Delta |
|---|---|---|---|
EE \Epsilon | ZZ \Zeta | HH \Eta | ΘΘ \Theta |
II \Iota | KK \Kappa | ΛΛ \Lambda | MM \Mu |
NN \Nu | ΞΞ \Xi | OO \Omicron | ΠΠ \Pi |
PP \Rho | ΣΣ \Sigma | TT \Tau | ΥΥ \Upsilon |
ΦΦ \Phi | XX \Chi | ΨΨ \Psi | ΩΩ \Omega |
ΓΓ \varGamma | ΔΔ \varDelta | ΘΘ \varTheta | ΛΛ \varLambda |
ΞΞ \varXi | ΠΠ \varPi | ΣΣ \varSigma | ΥΥ \varUpsilon |
ΦΦ \varPhi | ΨΨ \varPsi | ΩΩ \varOmega | |
αα \alpha | ββ \beta | γγ \gamma | δδ \delta |
ϵϵ \epsilon | ζζ \zeta | ηη \eta | θθ \theta |
ιι \iota | κκ \kappa | λλ \lambda | μμ \mu |
νν \nu | ξξ \xi | οο \omicron | ππ \pi |
ρρ \rho | σσ \sigma | ττ \tau | υυ \upsilon |
ϕϕ \phi | χχ \chi | ψψ \psi | ωω \omega |
εε \varepsilon | ϰϰ \varkappa | ϑϑ \vartheta | ϑϑ \thetasym |
ϖϖ \varpi | ϱϱ \varrho | ςς \varsigma | φφ \varphi |
ϝϝ \digamma |
Other Letters
ı \imath | ∇∇ \nabla | ℑℑ \Im | RR \Reals | ŒŒ \text{\OE} |
|---|---|---|---|---|
ȷ \jmath | ∂∂ \partial | ℑℑ \image | ℘℘ \wp | øø \text{\o} |
ℵℵ \aleph | ⅁⅁ \Game | kk \Bbbk | ℘℘ \weierp | ØØ \text{\O} |
ℵℵ \alef | ℲℲ \Finv | NN \N | ZZ \Z | ßß \text{\ss} |
ℵℵ \alefsym | CC \cnums | NN \natnums | a˚a˚ \text{\aa} | ıı \text{\i} |
ℶℶ \beth | CC \Complex | RR \R | A˚A˚ \text{\AA} | ȷȷ \text{\j} |
ℷℷ \gimel | ℓℓ \ell | ℜℜ \Re | ææ \text{\ae} | |
ℸℸ \daleth | ℏℏ \hbar | ℜℜ \real | ÆÆ \text{\AE} | |
ðð \eth | ℏℏ \hslash | RR \reals | œœ \text{\oe} |
Accents
a′a′ a' | a\~a\~ \tilde{a} | g˚g˚ \mathring{g} |
|---|---|---|
a′′a′′ a'' | ac\~ac \widetilde{ac} | AB⏠AB \overgroup{AB} |
a′a′ a^{\prime} | AB\~AB \utilde{AB} | AB⏡AB \undergroup{AB} |
aˊaˊ \acute{a} | F⃗F \vec{F} | AB⇒AB \Overrightarrow{AB} |
yˉyˉ \bar{y} | AB←AB \overleftarrow{AB} | AB→AB \overrightarrow{AB} |
a˘a˘ \breve{a} | AB←AB \underleftarrow{AB} | AB→AB \underrightarrow{AB} |
aˇaˇ \check{a} | ac↼ac \overleftharpoon{ac} | ac⇀ac \overrightharpoon{ac} |
a˙a˙ \dot{a} | AB↔AB \overleftrightarrow{AB} | AB⏞AB \overbrace{AB} |
a¨a¨ \ddot{a} | AB↔AB \underleftrightarrow{AB} | AB⏟AB \underbrace{AB} |
a...a... \dddot{a} | AB‾AB \overline{AB} | ABundefinedAB \overlinesegment{AB} |
a....a.... \ddddot{a} | AB‾AB \underline{AB} | ABundefinedAB \underlinesegment{AB} |
aˋaˋ \grave{a} | acˇac \widecheck{ac} | X‾X \underbar{X} |
θ^θ^ \hat{\theta} | ac^ac \widehat{ac} |
Accent functions inside \text{…}
aˊaˊ \'{a} | a˜a˜ \~{a} | a˙a˙ \.{a} | a˝a˝ \H{a} |
|---|---|---|---|
aˋaˋ \`{a} | aˉaˉ \={a} | a¨a¨ \"{a} | aˇaˇ \v{a} |
aˆaˆ \^{a} | a˘a˘ \u{a} | a˚a˚ \r{a} |
See also letters and unicode.
Delimiters
( )( ) ( ) | ( )( ) \lparen\rparen | ⌈ ⌉⌈ ⌉ ⌈ ⌉ | ⌈ ⌉⌈ ⌉ \lceil\rceil | ↑↑ \uparrow | |
|---|---|---|---|---|---|
[ ] | \lbrack\rbrack | ⌊ ⌋⌊ ⌋ ⌊ ⌋ | ⌊ ⌋⌊ ⌋ \lfloor\rfloor | ↓↓ \downarrow | |
{}{} \{ \} | {}{} \lbrace\rbrace | ⎰⎱⎰⎱ ⎰⎱ | ⎰⎱⎰⎱ \lmoustache\rmoustache | ↕↕ \updownarrow | |
⟨ ⟩⟨ ⟩ ⟨ ⟩ | ⟨ ⟩⟨ ⟩ \langle\rangle | ⟮ ⟯⟮ ⟯ ⟮ ⟯ | ⟮ ⟯⟮ ⟯ \lgroup\rgroup | ⇑⇑ \Uparrow | |
| ∣∣ `\ | ` | ∣∣ \vert | ┌┐┌┐ ┌ ┐ | ⌜⌝┌┐ \ulcorner\urcorner | ⇓⇓ \Downarrow |
| ∥∥ `\ | ` | ∥∥ \Vert | └┘└┘ └ ┘ | ⌞⌟└┘ \llcorner\lrcorner | ⇕⇕ \Updownarrow |
∣ ∣∣ ∣ \lvert\rvert | ∥ ∥∥ ∥ \lVert\rVert | \left. | \right. | \\ \backslash | |
⟨ ⟩⟨ ⟩ \lang\rang | \< \>\< \> \lt \gt | ⟦ ⟧[[ ]] ⟦ ⟧ | ⟦ ⟧[[ ]] \llbracket\rrbracket | ⦃ ⦄{[ ]} \lBrace \rBrace |
Delimiter Sizing
(AB)(AB) \left(\LARGE{AB}\right)
(((((((((( ( \big( \Big( \bigg( \Bigg(
\left | \big | \bigl | \bigm | \bigr |
|---|---|---|---|---|
\middle | \Big | \Bigl | \Bigm | \Bigr |
\right | \bigg | \biggl | \biggm | \biggr |
\Bigg | \Biggl | \Biggm | \Biggr |
Environments
| abcdacbd | \begin{matrix}a & b \\c & d\end{matrix} | abcdacbd | \begin{array}{cc}a & b \\c & d\end{array} |
|---|---|---|---|
| (abcd)(acbd) | \begin{pmatrix}a & b \\c & d\end{pmatrix} | abcd | \begin{bmatrix}a & b \\c & d\end{bmatrix} |
| ∣abcd∣acbd | \begin{vmatrix}a & b \\c & d\end{vmatrix} | ∥abcd∥acbd | \begin{Vmatrix}a & b \\c & d\end{Vmatrix} |
| {abcd}{acbd} | \begin{Bmatrix}a & b \\c & d\end{Bmatrix} | abcdefghiadgbehcfi | \def\arraystretch{1.5}\begin{array}{c:c:c}a & b & c \\ \hlined & e & f \\\hdashlineg & h & i\end{array} |
| x\={aifbcifdx\={acifbifd | x = \begin{cases}a &\text{if } b \\c &\text{if } d\end{cases} | aifbcifd}⇒…acifbifd}⇒… | \begin{rcases}a &\text{if } b \\c &\text{if } d\end{rcases}⇒… |
| abcdacbd | \begin{smallmatrix}a & b \\c & d\end{smallmatrix} | ∑i∈Λ0\<j\<ni∈Λ0\<j\<n∑ | \sum_{\begin{subarray}{l}i\in\Lambda\\0<j<n\end{subarray}} |
基础知识
行内公式与行间公式 {#math}
行内公式(Inline Math,即穿插在文本中的公式)两侧分别使用一个美元 $ $ 符号定界。
例如:
文本文本$x \cdot \sin(y)$文本文本显示为:
文本文本$x \cdot \sin(y)$文本文本
行间公式(Math Blocks,独立成行居中的公式) 前后两行分别使用 $$ $$(每行两个美元符号)定界,Markdown 代码可以跨行写,例如:
$$
H_n = \sum_{i = 1}^{n} \frac{1}{i}
$$显示为
$$ H_n = \sum_{i = 1}^{n} \frac{1}{i} $$
再例如:
$$
\begin{pmatrix}
1 & 8 & 4 \\
7 & 9 & 2 \\
\end{pmatrix}
$$显示为
$$ \begin{pmatrix} 1 & 8 & 4 \\ 7 & 9 & 2 \\ \end{pmatrix} $$
行内公式的 “大小”(例如分数的大小、巨运算符上下标的位置)会比行间公式小,可以通过 \displaystyle 和 \textstyle 来切换两类模式:
对于行内公式,使用 \displaystyle 的效果:
| LaTeX 代码 | 显示效果 |
|---|---|
\frac{1}{x} | $\frac{1}{x}$ |
\displaystyle \frac{1}{x} | $\displaystyle \frac{1}{x}$ |
\int_0^x f(t) \mathop{}\!\mathrm{d} t | $\int_0^x f(t) \mathop{}\!\mathrm{d} t$ |
\displaystyle \int_0^x f(t) \mathop{}\!\mathrm{d} t | $\displaystyle \int_0^x f(t) \mathop{}\!\mathrm{d} t$ |
对于行间公式,使用 \textstyle 的效果:
$$
\textstyle \int \frac{\mathop{}\!\mathrm{d} x}{x} = \ln(x) + C
$$显示为
$$ \textstyle \int \frac{\mathop{}\!\mathrm{d} x}{x} = \ln(x) + C $$
LaTeX 控制序列的概念(类似于函数)
控制序列可以视作为命令:以 \ 开头,参数:必需参数 {} 和可选参数 []。
控制序列可以实现特定功能,例如 \sin x 显示为 $\sin x$、\Omega \omega 显示为 $\Omega \omega$、\color{red} x 显示为 $\color{red} x$、\mathbb{Q} 显示为 $\mathbb{Q}$、\sqrt[5]{x} 显示为 $\sqrt[5]{x}$。
LaTeX 环境的概念
环境的格式为 \begin{环境名} 环境内部 \end{环境名},即 \begin 和 \end 以及它们中间的部分。
环境有比控制序列更加灵活的用法,例如:
\begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix}显示为
$$ \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix} $$
而
f(x) = \begin{cases}
2 & x \in \mathbb Q \\
1 & x \notin \mathbb Q \land x \in \mathbb A \\
0 & x \notin \mathbb A
\end{cases}显示为
$$ f(x) = \begin{cases} 2 & x \in \mathbb{Q} \\ 1 & x \notin \mathbb{Q} \land x \in \mathbb{A} \\ 0 & x \notin \mathbb{A} \end{cases} $$
基本语法
二元关系 / 运算符
二元关系符:
| LaTeX 代码: | x = y | x > y | x < y | x \ge y | x \le y |
|---|---|---|---|---|---|
| 显示效果: | $x = y$ | $x > y$ | $x < y$ | $x \ge y$ | $x \le y$ |
| LaTeX 代码: | x \perp y | x \parallel y | x \mid y | x \nparallel y | x \nmid y |
| 显示效果: | $x \perp y$ | $x \parallel y$ | $x \mid y$ | $x \nparallel y$ | $x \nmid y$ |
| LaTeX 代码: | x \approx y | x \in y | x \ni y | x \ne y | x \sim y |
| 显示效果: | $x \approx y$ | $x \in y$ | $x \ni y$ | $x \ne y$ | $x \sim y$ |
二元运算符:
| LaTeX 代码: | x + y | x - y | x \times y | x \div y | x \cdot y | x \bmod y |
|---|---|---|---|---|---|---|
| 显示效果: | $x + y$ | $x - y$ | $x \times y$ | $x \div y$ | $x \cdot y$ | $x \bmod y$ |
| LaTeX 代码: | x \circ y | x * y | x \ast y | x / y | x \oplus y | x \otimes y |
| 显示效果: | $x \circ y$ | $x * y$ | $x \ast y$ | $x / y$ | $x \oplus y$ | $x \otimes y$ |
| LaTeX 代码: | x \cup y | x \cap y | x \land y | x \lor y | x \pm y | x \mp y |
| 显示效果: | $x \cup y$ | $x \cap y$ | $x \land y$ | $x \lor y$ | $x \pm y$ | $x \mp y$ |
上标与下标
上标命令是 ^{角标},下标命令是 _{角标}。当角标是单个字符时可以不用花括号(在 LaTeX 中,花括号是用于分组,即花括号内部文本为一组)。
例:x_1、x^2、x_1^2、x^2_1、x_{22}^{(n)}、{}^*\!x^* 的显示效果分别为:
| LaTeX 代码: | x_1 | x^2 | x_1^2 | x^2_1 | x_{22}^{(n)} | {}^*\!x^* |
|---|---|---|---|---|---|---|
| 显示效果: | $x_1$ | $x^2$ | $x_1^2$ | $x^2_1$ | $x_{22}^{(n)}$ | ${}^*\!x^*$ |
分式
输入较短的分式时,最简单的方法是使用斜线,譬如输入 $(x + y) / 2$,可得到 $(x + y) / 2$。
要输入带有水平分数线的公式,可用命令:\frac{分子}{分母}。
| LaTeX 代码 | 显示效果 |
|---|---|
\frac{x + y}{2} | $\frac{x + y}{2}$ |
\frac{1}{1 + \frac{1}{2}} | $\frac{1}{1 + \frac{1}{2}}$ |
根式
排版根式的命令是:开平方:\sqrt{表达式};开 $n$ 次方:\sqrt[n]{表达式}。
| LaTeX 代码 | 显示效果 |
|---|---|
\sqrt{2} < \sqrt[3]{3} | $\sqrt{2} < \sqrt[3]{3}$ |
\sqrt{1 + \sqrt[p]{1 + a^2}} | $\sqrt{1 + \sqrt[p]{1 + a^2}}$ |
求和与积分
排版求和符号与积分符号的命令分别为 \sum 和 \int,它们通常都有上下限,在排版上就是上标和下标。
| LaTeX 代码 | 显示效果 |
|---|---|
\sum_{k = 1}^{n} \frac{1}{k} | $\sum_{k = 1}^{n} \frac{1}{k}$ |
\sum_{k = 1}^n \frac{1}{k} | $\sum_{k = 1}^n \frac{1}{k}$ |
\int_a^b f(x) d x | $\int_a^b f(x) d x$ |
\int_a^b f(x) \mathop{} \! \mathrm{d} x | $\int_a^b f(x) \mathop{} \! \mathrm{d} x$ |
为了使行内公式$\sum_{}^{}{}$的上下标正常显示,可以使用$\sum \limits_{}^{}{}$。
例如:$\sum \limits_{k=1}^{n}{\frac{1}{k}}$
公式中的空格
LaTeX 能够自动处理公式中的大多数字符之间的空格,但是有时候需要自己手动进行控制。除了常见的几个空格命令外,可以通过 \hspace{长度} 自定义空格长度。
| LaTeX 代码 | 显示效果 |
|---|---|
\Box \! \Box | $\Box \! \Box$ |
\Box \Box | $\Box \Box$ |
\Box \, \Box | $\Box \, \Box$ |
\Box \: \Box | $\Box \: \Box$ |
\Box \; \Box | $\Box \; \Box$ |
\Box \ \Box | $\Box \ \Box$ |
\Box \quad \Box | $\Box \quad \Box$ |
\Box \qquad \Box | $\Box \qquad \Box$ |
\Box \hspace{1cm} \Box | $\Box \hspace{1cm} \Box$ |
\Box \hspace{1.5cm} \Box | $\Box \hspace{1.5cm} \Box$ |
\Box \hspace{2cm} \Box | $\Box \hspace{2cm} \Box$ |
\Box \Box | $\Box \Box$ |
\Box \hspace{-.1cm} \Box | $\Box \hspace{-0.1cm} \Box$ |
\Box \hspace{-.2cm} \Box | $\Box \hspace{-0.2cm} \Box$ |
\Box \hspace{-.3cm} \Box | $\Box \hspace{-0.3cm} \Box$ |
\Box \hspace{-.4cm} \Box | $\Box \hspace{-0.4cm} \Box$ |
插入文本
在公式中插入文本可以通过 \text{文字} 在公式中添加文字,比如:
\text{对任意的 } x > 0 \text{,有 } f(x) > 0 \text{。}显示为
$$ \text{对任意的 } x > 0 \text{,有 } f(x) > 0 \text{。} $$
多行的数学公式
使用 aligned 环境对齐多行公式。
\begin{aligned}
\cos(2 \theta) &= \cos^2(\theta) - \sin^2(\theta) \\
&= 2 \cos^2(\theta) - 1
\end{aligned}显示为
$$ \begin{aligned} \cos(2 \theta) &= \cos^2(\theta) - \sin^2(\theta) \\ &= 2 \cos^2(\theta) - 1 \end{aligned} $$
字体、字号与颜色
字体
对于英文的字体,LaTeX 给出了三个层级,其中 KaTeX 支持的有:
- 族(family):有罗马(roman)、无衬线(sans-serif)、打字机(teletype)三族,改变字体的基本外观。
- 形状(shape):有直立(upright)、意大利(italic)两种形状。
- 重量(weight):有中等(medium)、粗体(boldface)两种重量。
在某些时候,KaTeX 允许这些层级叠加使用:
| 直立中等 | 意大利中等 | 直立粗体 | 意大利粗体 | ||
|---|---|---|---|---|---|
\textup{\textmd | \textit{\textmd | \textup{\textbf | \textit{\textbf | ||
| 罗马 | \textrm | $\textup{{\textrm{Butterfly96}}}$ | $\textit{{\textrm{Butterfly96}}}$ | $\textup{\textbf{\textrm{Butterfly96}}}$ | $\textit{\textbf{\textrm{Butterfly96}}}$ |
| 无衬线 | \textsf | $\textup{{\textsf{Butterfly96}}}$ | $\textit{{\textsf{Butterfly96}}}$ | $\textup{\textbf{\textsf{Butterfly96}}}$ | 不可用 |
| 打字机 | \texttt | $\textup{{\texttt{Butterfly96}}}$ | $\textit{{\texttt{Butterfly96}}}$ | 不可用 | 不可用 |
经过验证,\textmd 在 $\text{SiYuan}$ 中==不可用==。在文本模式下(即 \text 内部),默认情况下,族使用罗马、形状使用直立、重量使用中等。
在数学模式下(即 KaTeX 的默认),默认情况下,族使用罗马、形状使用意大利、重量使用中等。
特别地,在数学模式下,提供了 \mathbb、\mathcal、\mathscr 和 \mathfrak 以供特殊数学字体使用:
\mathbb:$\mathbb{ZQNR}$ 和 $\mathbb{k}$。\mathcal:$\mathcal{ABCDE}$ 和 $\mathcal{0123456789}$。\mathscr:$\mathscr{ABCDE}$。\mathfrak:$\begin{aligned} & \mathfrak{ABCDEF} \\ & \mathfrak{abcde \ 0123456789} \end{aligned}$。
前文的改变字体的命令对这些特殊字体无效。
对于中文,我们有:
| 直立中等 | 意大利中等 | 直立粗体 | 意大利粗体 | ||
|---|---|---|---|---|---|
\textup{\textmd | \textit{\textmd | \textup{\textbf | \textit{\textbf | ||
| 默认 | 无 | $\textup{{你好,世界!}}$ | $\textit{{你好,世界!}}$ | $\textup{\textbf{你好,世界!}}$ | $\textit{\textbf{你好,世界!}}$ |
| 罗马 | \textrm | $\textup{{\textrm{你好,世界!}}}$ | $\textit{{\textrm{你好,世界!}}}$ | $\textup{\textbf{\textrm{你好,世界!}}}$ | $\textit{\textbf{\textrm{你好,世界!}}}$ |
经过验证,\textmd 在 $\text{SiYuan}$ 中==不可用==。对于中文,族设置为无衬线或打字机时,要么不可用,要么与设置为罗马时无区别。
可以看出,族默认时是宋体,族为罗马时是黑体。
字号
LaTeX 内置了从大到小的下列字号:
\Huge | $\Huge \sum_{i = 1}^{n} \frac{1}{i}$ | \normalsize | $\normalsize \sum_{i = 1}^{n} \frac{1}{i}$ |
|---|---|---|---|
\huge | $\huge \sum_{i = 1}^{n} \frac{1}{i}$ | \small | $\small \sum_{i = 1}^{n} \frac{1}{i}$ |
\LARGE | $\LARGE \sum_{i = 1}^{n} \frac{1}{i}$ | \footnotesize | $\sum_{i = 1}^{n} \frac{1}{i}$ |
\Large | $\Large \sum_{i = 1}^{n} \frac{1}{i}$ | \scriptsize | $\scriptsize \sum_{i = 1}^{n} \frac{1}{i}$ |
\large | $\large \sum_{i = 1}^{n} \frac{1}{i}$ | \tiny | $\tiny \sum_{i = 1}^{n} \frac{1}{i}$ |
经过验证,\footnotesize 在 $\text{Obsidian}$ 中==不可用==。颜色
可以通过 {\color{颜色} 文字或公式} 或 \textcolor{颜色}{文字或公式} 改变字体颜色。例如:
a + {\color{red} a + {}} a 显示为 $a + {\color{red} a + {}} a$。a + \textcolor{red}{a + {}} a 显示为 $a + \textcolor{red}{a + {}} a$。a + {\color{#22AB22} a + {}} a 显示为 $a + {\color{#22AB22} a + {}} a$。a + \textcolor{#22AB22}{a + {}} a 显示为 $a + \textcolor{#22AB22}{a + {}} a$。