MathJax基礎教程與快速參考
??MathJax是一款運行在瀏覽器中的開源的數學符號渲染引擎,使用MathJax可以方便的在瀏覽器中顯示數學公式,不需要使用圖片。可以解析LaTex、MathML和ASCIIMathMl的標記語言。
??在Stack Exchange上有一篇基礎教程MathJax basic tutorial and quick reference很值得學習,順便翻譯一下。
- ??有兩種公式顯示形式,一種是嵌入在行內的公式,寫在
$...$
內;另一種是單獨展示的公式,使用$$...$$
。這兩種方式的渲染效果不同,如下所示:
$\sum_{i=0}^n i^2 = \frac{(n^2+n)(2n+1)}{6}\tag{inline}$
$$\sum_{i=0}^n i^2 = \frac{(n^2+n)(2n+1)}{6}\tag{displayed}$$
∑ni=0i2=(n2+n)(2n+1)6(inline)
??希臘字母,小寫形式,使用
\alpha, \beta, ..., \omega
,如:α,β,...,ω;大寫形式,使用\Gamma, \Delta, ..., \Omega
,如:Γ,Δ,...,Ω。??下標與上標符號,分別為
^
與_
,如:x_i^2
:x2i。java中math的方法。??上標、下標以及其它操作符只作用于下一個組。一個組可以是單個符號,或者是由花括號
{...}
括起來的公式。例如使用10^10來表示10的10次方,但是會顯示成1010,可以使用$10^{10}$
來正確顯示1010。使用花括號界定公式中應用上標或下標的更多例子如下:x^5^6
:x^5^6是錯誤的用法;{x^y}^z
表示xyz,x^{y^z}
表示xyz。另外,觀察一下x_i^2
x2i與x_{i^2}
xi2之間的區別。??小括號與中括號
() []
都是普通的符號()[],可以直接使用。如果想使用大括號{}
,則需要使用轉義字符\{\}
{}。
??不過這些括號直接用在公式中是沒有大小尺度變化的,因此在一些公式中會顯的特別小,如:(\frac{\sqrt x}{y^3})
(x√y3)。可以在括號前使用\left( ... \right)
解決這一問題,使之自動調整括號在公式中的顯示大小,如:\left(\frac{\sqrt x}{y^3}\right)
(x√y3)。
??\left和\right可以用在如下一類的括號中:(
與)
(x),[
與]
[x],\{
與\}
或\lbrace
與\rbrace
{x},|
|x|,\langle
與\rangle
?x?,\lceil
與\rceil
?x?,\lfloor
與\rfloor
?x?。另外,也可以使用.
隱藏括號,使之不顯示,如:\left.\frac{1}{2}\right\rbrace
12}。??求和符∑與積分符∫,分別為
\sum
與\int
。使用求和符與積分符時,需要指定上下標,如:\sum_i^n
∑ni。特別需要注意的是,如果角標不是單個字符時需要使用花括號{...}
,如:\sum_{i=0}^{\infty} i^2
∑∞i=0i2,求積符\prod
∏、求積分符\int
∫、并集符\bigcup
?、交集符\bigcap
?、雙重積分符\iint
?等類似。??分數,有兩種方式實現分數,一種是
\frac ab
ab,\frac {a+1}{b+1}
a+1b+1;另一種是使用\over
a+1b+1。??字體。
\mathbb
或\Bbb
blackboard bold:ABCabc。\mathbf
boldface:ABCabc。\mathtt
typewritter font:ABCabc。\mathrm
roman font:ABCabc。\mathsf
sans-serif font:ABCabc。\mathcal
calligraphic letters:ABCabc。\mathscr
script letters:ABCabc。\mathfrak
Fraktur letters:ABCabc。
??開根號
\sqrt
\sqrt,\sqrt{x^3}
x3??√,\sqrt[3]{\frac xy}
xy??√3。對于更復雜的表達式,可以考慮使用{...}^{1/2}
代替。??一些特殊的函數,如
lim
,sin
,max
,ln
等,使用\sin
,\lim
表示正弦函數sinx,而不是$sin x$
表示正弦函數sinx,其它類似。對于\lim
,可以附加一個下標記號,如:\lim_{x \to 0}
limx→0。??此外,還有大量的特殊符號與記法,這里列舉一些最常用的,更加詳細的符號說明參見The Comprehensive LaTex Symbol與LaTeX and AMS-LaTex Symbols。
- 關系操作符:
\lt \gt \le \ge \neq
<,>,≤,≥,≠,也可以在這些符號前加上\not
表示非,如:\not\lt
≮。 - 算術操作符:
\times \div \pm \mp
×,÷,±,?。\cdot
表示居中的點x?y。 - 集合操作符:
\cup \cap \setminus \subset \subseteq \subsetneq \supset \in \notin \emptyset \varnothing
∪∩?????∈???。 - 排列組合:
{n+1 \choose 2k}
或\binom{n+1}{2k}
(n+12k)。 - 箭頭:
\to \rightarrow \leftarrow \Rightarrow \Leftarrow \mapsto
→→←???。 - 邏輯操作符:
\land \lor \lnot \forall \exists \top \bot \vdash \vDash
∧∨????⊥??。 \star \ast \oplus \circ \bullet
??⊕°?\approx \sim \simeq \cong \equiv \prec
≈~??≡?。\infty \aleph_0
∞?0\nabla \partial
??\Im \Re
IR。- 對于求模值,使用
\pmod
:a\equiv b\pmod n a≡b(modn)。 - 省略號:
\ldots
a1,a2,…,an 與\cdots
a1+a2+?+an。 - 希臘字符做變量的形式:
\epsilon, \varepsilon
?,ε,\phi \varphi
?φ。以及其它的角標小寫字母,如:\ell
?。
*頂部符號:\hat
x^\widehat
xy?\overline
xyˉˉˉˉ\overrightarrow
x→\dot
x˙\ddot
x¨。
- 關系操作符:
??空格
\, \; \quad \qquad
a\,b a\;b a \quad b a \qquad b
ab ab ab ab。??矩陣:使用
$$\begin{matrix}…\end{matrix}$$
這樣的形式來表示矩陣,在\begin{matrix}`與`\end{matrix}
之間加入矩陣中的元素即可。矩陣的行之間使用\分隔,列之間使用&分隔。如:\begin{matrix} 1&0&0 \\ 0&1&0 \\ 0&0&1 \end{matrix}
100010001。??帶括號的矩陣:
{matrix}
替換為{pmatrix}、{bmatrix}、{Bmatrix}、{vmatrix}、{Vmatrix}
。同樣也可以使用\left \right
。如:(1001)(pmatrix)[1001](bmatrix){1001}(Bmatrix)∣∣∣1001∣∣∣(vmatrix)∥∥∥1001∥∥∥(Vmatrix)??矩陣中省略元素:
\cdots
?,\ddots
?,\vdots
?。如:???????12?n12?n????12?n?????????方程組使用
\begin{array}...\end{array}
與\left{...\right.
,如:f(n)=\left\{\begin{array}{c} n/2, & \text{if n is even}\\3n+1, & \text{if n is odd}\end{array}\right.
f(n)={n/2,3n+1,if n is evenif n is odd
??也可以使用\begin{cases}...\end{cases}
,此時不需要\left
與\right
,如:f(n)=\begin{cases}n/2, & \text{if n is even}\\3n+1, & \text{if n is odd}\end{cases}
f(n)={n/2,3n+1,if n is evenif n is odd
??恩,就這些也基本夠用了。更多內容請參見官網。
參考資料
1. MathJax basic tutorial and quick reference
2. MathJax
3. MathJax中文文檔