SkyWT / 博客 / Markdown 中 TeX/LaTeX 数学公式的用法

Markdown 中 TeX/LaTeX 数学公式的用法

2018 年 3 月 28 日 11:41


文章目录

作为OIer,写博客的时候经常会遇到需要数学公式的情况,特别是Σ、∈等符号,在markdown里用起来十分不友好(百度百科网络流那一篇就出现了:Σ(w∈V)f(u,w)=0。好在markdown中有插件为我们提供了强大的数学公式显示支持。现在我们就可以这样浪:

wVf(u,w)=0\displaystyle \sum_{w\in V} f(u,w)=0

我们甚至可以……

1(ϕ5ϕ)e25π=1+e2π1+e4π1+e6π1+e8π1+\displaystyle \frac{1}{\Bigl(\sqrt{\phi \sqrt{5}}-\phi\Bigr) e^{\frac25 \pi}} = 1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} {1+\frac{e^{-6\pi}} {1+\frac{e^{-8\pi}} {1+\cdots} } } }

(k=1nakbk)2(k=1nak2)(k=1nbk2)\displaystyle \left( \sum_{k=1}^n a_k b_k \right)^2 \leq \left( \sum_{k=1}^n a_k^2 \right) \left( \sum_{k=1}^n b_k^2 \right)

是不是很浪?!

实现插件

目前似乎有两个比较流行的方案,一个是KaTeX\KaTeX,一个是MathJax。

MathJax

这是目前最流行的方案,MathJax支持的公式很完整,基于TeX/LaTeX的语法,但是缺点是(据说)加载速度十分缓慢。(由于我WordPress中使用的MarkDown插件是国人开发的Editor.md,其中内置的只有KaTeX,所以我没有尝试过MathJax……)
官网:https://www.mathjax.org/

KaTeX

KaTeX\KaTeX也是基于TeX/LaTeX的语法。(据说)KaTeX相比MathJax加载速度快得多,但是(据说)KaTeX支持没有MathJax完整。总之对于我们日常使用,上面两个都不错。
官网:https://khan.github.io/KaTeX/
(在这个管网上KaTeX直接放出加载速度对比图手撕MathJax……)

常用语法

由于我正在使用KaTeX,所以本文中公式显示均以KaTeX为准。

首先数学公式都是要用两个“$”符号包起来的。任仍然拿刚才的“Σ(w∈V)f(u,w)=0”举例,在编辑器里应该写成这样:

\displaystyle \sum_{win V} f(u,w)=0

行间公式与行内公式

这个displaystyle表示这是行间公式。与之对应的就是行内公式(不加displaystyle)。下面两个公式一个是行间公式,一个是行内,可以看出区别(主要是Sigma上下数字写法区别):

wVf(u,w)=0\displaystyle \sum_{w\in V} f(u,w)=0

wVf(u,w)=0\sum_{w\in V} f(u,w)=0

上标与下标

下标用“_”符号,上标用“^”符号。这些符号用在Sigma之后就可以让Sigma上下显示数字了。比如:

i=1in\displaystyle \sum_{i=1}^{i\leq n}

\displaystyle \sum_{i=1}^{i\leq n}

这个leq是啥?这就要引出以下的:

关系运算符

回到一开始的公式,这个sum就是Sigma的意思了,就是加和。in表示属于。而leq则是小于等于。

完整的关系运算符可以去看:https://khan.github.io/KaTeX/。因为有很多,这里不一一列举了。

分数

使用\frac {分子} {分母}可以显示一个分数。便捷情况可直接输入\frac ab来快速生成一个ab\frac ab
如果分式很复杂,亦可使用 分子 \over 分母 命令,此时分数仅有一层。
举例:

e2π1+e4π1+e6π1+e8π1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} {1+\frac{e^{-6\pi}} {1+\frac{e^{-8\pi}} {1+\cdots} } } }

括号和分隔符

使用{}来表示{}。普通的括号、分隔符(比如“()”、“|”、“[]”)则用其本身表示。当要显示大号的括号或分隔符时,要用\left和\right命令。
举例:

f(x,y,z)=3y2z(3+7x+51+y2)\displaystyle f(x,y,z) = 3y^2z \left( 3+\frac{7x+5}{1+y^2} \right)

f(x,y,z) = 3y^2z \left( 3+\frac{7x+5}{1+y^2} \right)

参考

https://khan.github.io/KaTeX/
https://www.zybuluo.com/codeep/note/163962


暂无评论


发表新的评论

所有评论都将经过博主审核。请勿填写无意义邮箱或发表无关评论、广告等,否则会被视为垃圾评论。

提交评论即表明你同意本网站使用 Cookie,并允许本站在后台记录你的邮箱、IP 地址等必要信息。这些信息不会被透露给其他用户。(提交一次评论后,本提示将不再展示)