以UnicodeMath在Word插入公式(4)——結(jié)構(gòu)

本章將講解如何輸入公式的結(jié)構(gòu)。另外要注意小括號等定界符的使用。
分式
在LaTeX中,分式往往是用控制詞\frac{}{}
來輸入。第一個花括號里輸入分子,第二個里輸入分母。例如,\frac{1}{2}為,1\frac{2}{3}為
,\frac{1}{x+1}為
。
對于UnicodeMath則要簡單不少,只需要/
就可以。對于第三個例子這種分子分母是組合操作數(shù)的情況,則用小括號包含加以區(qū)分。注意,在這里輸入的小括號只是作為定界符,在公式生成后就會消失。
所以,上面的例子可以用以下方式獲得。

有時候公式空間太狹窄,為了美觀,需要分式使用“橫放”的方式,像用代替
。用UnicodeMath直接輸入
/
還是會生成豎式分式,要使用\/
作為分式符號才會讓公式呈現(xiàn)“橫放”的樣式。
word里的分式部分還提供了小分式這種結(jié)構(gòu),但是沒有對應(yīng)的控制詞,只能在“公式工具”選項卡里點擊輸入。
除了/
之外,UnicodeMath還有豎式分式\ndiv
、斜式分式\sdiv
和橫式分式\ldiv
來適應(yīng)不同的需求。
以官方文檔里的公式為例,則有

另外,還有二項式系數(shù)這樣的分式形式,則用\atop
(|)來獲得。
注意:線性格式第3版新增了\choose
(?)來獲得二項式系數(shù),不用額外輸入前后的小括號。但是在word 2019里無效,反而在OneNote(UWP最新版)里有效。

上下標(biāo)
UnicodeMath中的下標(biāo)和上標(biāo)的和LaTeX的方式很相識,都是用_
表示下標(biāo),^
表示上標(biāo)。和分式一樣,對于組合操作數(shù)的上下標(biāo)都是用小括號將其分隔。
上標(biāo)和下標(biāo)可以一起使用,也可以嵌套使用。嵌套使用時也要用小括號進行分隔。當(dāng)上標(biāo)和下標(biāo)同時使用時,輸入順序無論誰先誰后都不影響公式的生成。

一階導(dǎo)數(shù)符號\prime′也是一種上標(biāo),我們可以用“'”,也可以用\prime
輸入。但是二階導(dǎo)數(shù)和三階導(dǎo)數(shù)則要用\pprime
和\ppprime
輸入。

除了右邊,還有在左邊的上下標(biāo)。使用方法都是_
表示下標(biāo),^
表示上標(biāo)。對于只有下標(biāo)或上標(biāo)的形式,例如則要用
_1?F_1
或(_1^)F_1
。不過在word 2019里,只有左邊都有上下標(biāo)的時候有效,建議在OneNote里使用。

另外,有一個問題需要注意一下。我們有時需要輸入一些化學(xué)元素的同位素,例如碳14,即。在線性格式里,應(yīng)該是
^14 "C"
或(^14_)"C"
(用雙引號表示文本用正體顯示,詳見之后的章節(jié)),結(jié)果往往得到。所以,要得到我們想要的結(jié)果,就要先輸入
(^14_)
或(_^14)
,加上空格,就會得到左角標(biāo)和右邊的一個用虛線框表示的占位符,選中占位符,再輸入"C"
,再按空格,才能得到我們想要的碳14符號。

對于大型運算符,上下標(biāo)的顯示則有不同。像在行間公式里,對于求和和乘積,上下標(biāo)在符號的正上下方,而對于積分,則在符號的右上下方。我們可以自定義上下標(biāo)的位置,詳見之后的章節(jié)。
根式
平方根、立方根和四次方根可以直接用Unicode的根式字符√(\sqrt
,U+221A
)、?(\cbrt
,U+221B
)和?(\qdrt
,U+221C
)得到,例如

對于其他開方次數(shù)的根式,我們可以使用\sqrt(n&a)
得到。除非是復(fù)合的根式,對于一些較簡單的根式,可以不用加小括號。

在線性格式第3版中,新增了\root
這種類似LaTeX的根式輸入方式。

大型運算符
點開“大型運算符”,可以看到求和(\sum
)、乘積(\prod
)和副積(\amalg
)等大型運算符的共同點:不論它們有沒有上下限,在它們的正右邊,都一個參數(shù)——naryand。

而在UnicodeMath中,\naryand
(?,U+2592
)就是用來輸入naryand。不同于分式,naryand最外邊的小括號不會在公式生成時自動消失,因為小括號的作用是用來分隔組合的naryand。如果我們不想用括號來分隔組合的naryand,可以使用控制詞\begin
(〖,U+3016
)和\end
(〗,U+3017
)來作為定界符,這些字符在公式生成時就會消失。
在上一節(jié)里,可以看到我們使用控制詞\root
輸入根式時,還要配合\of
這個控制詞。而在大型運算符中為了方便輸入,也可以使用\of
(?,U+2592
)代替\naryand
。兩個控制詞是等同的。甚至\naryand
也可以配合\root
用于輸入根式。

在使用中,可以注意到大型運算符在行內(nèi)公式和行間公式的排版效果是有區(qū)別的。在行間公式里,沒有空間的限制,大型運算符的上下標(biāo)是在符號的正上下方的;而在行內(nèi)公式里,為了避免過于擁擠或產(chǎn)生難看的行距,大型運算符的上下標(biāo)都變成了在右邊的角標(biāo)。
在LaTeX中可以使用控制詞\limits和\nolimits來準(zhǔn)確控制巨算符的上下標(biāo)位置。UnicodeMath也引入這兩個控制詞,不過在使用過程中有一些情況要說明:
只能在行間公式中使用;
Word可能沒有這兩個控制詞,需要的話可以參考本系列的第二篇文章,在“數(shù)學(xué)符號自動更正”選項中加入這兩個控制詞;
OneNote UWP版本可以使用,建議參考OneNote,將\limits替換為1,\nolimits替換為2;
UnicodeMath第3版可以在大型運算符之后輸入相應(yīng)的數(shù)字,讓其上下標(biāo)呈現(xiàn)不同的效果,但是只有1和2有效果,效果分別等同于\limits和\nolimits。

括號
括號(或者說定界符)有個概念,就是開符號和閉符號,也可以說左邊的是開符號,右邊的是閉符號。定界符可以是括號這樣可見的,也可以是只表示邊界但不顯示的,例如\begin
和\end
(或者\left
和\right
)。
幾種常見的括號(()
、[]
和{}
)我們可以直接輸入,除了小括號以外的其他括號,我們也可以用控制詞輸入。

上面的例子有幾點要了解:
左矢、右矢的符號,也是尖括號可以用
\bra
和\ket
,也可以用\langle
和\rangle
輸入;方括號可以用
[]
,也可以用\lbrack
和\rbrack
輸入;花括號可以用
{}
,也可以用\lbrace
和\rbrack
輸入;絕對值定界符可以用豎線
|
(Shift+\),也可以用\vert
輸入;在輸入完右括號之后,再按空格,可以讓括號大小隨內(nèi)容調(diào)整;
在左右括號前,用
\left
和\right
,或者\open
和\close
也可以讓括號的大小隨包含內(nèi)容調(diào)整;左右的括號可以不同,但是左右要對應(yīng);
有時候我們需要輸入的括號是如下情況:
兩個單邊的括號,例如
[[
和]]
;倒置括號,例如
][
;只有單邊的括號有顯示,另一邊有邊界但不顯示,例如
;
我們不能直接輸入,不然括號的大小自動調(diào)整會失效。這時候我們就要用到上面的\left
和\right
,即\open
和\close
控制詞。

有時候要在括號內(nèi)使用分隔符,我們可以使用豎線|
,不過為了避免和絕對值混淆,推薦使用\vbar
。此外,對于這樣的表達式則要用到
\mid
。
如果我們對自動調(diào)節(jié)的定界符的大小不滿意的話,我們還可以像LaTeX一樣手動調(diào)節(jié),只需要├(\left
或\open
)后面跟著“0”到“4”就可以,其和LaTeX的控制詞的對應(yīng)如下
數(shù)字????含義
0????不變
1????\big
2????\Big
3????\bigg
4????\Bigg

上述公式的輸入文本為\open?4{\open?3{\open?2[\open?1(\open?0(x))]}}?
。
事例和堆棧也被歸類到括號這個大類中。
事例其實可以看做是缺少另一邊的括號組,缺少的一邊用對應(yīng)的\open
或\close
(\left
或\right
)代替。其中事例組用控制詞\eqarray
或\cases
引導(dǎo),使用()
將事例組包含起來,用@
分段。若要對齊就要使用&
。
而堆棧一般用在二項式系數(shù),在分式一節(jié)已經(jīng)講解過。

函數(shù)
像這樣的函數(shù)在公式里是以正體的樣式顯示的。使用UnicodeMath輸入函數(shù),可以直接使用
sin
,這樣輸入會被自動識別為函數(shù)且以正體顯示。能被這樣對待的函數(shù)可在“公式選項”的可識別的函數(shù)里查看,我們也能在里面添加自定義的函數(shù)。而在支持較新的UnicodeMath的軟件里,例如在OneNote里,可以像LaTeX那用使用\sin
的形式。
在輸入函數(shù)名之后,我們可以有兩種操作方式來輸入函數(shù)的參數(shù)。
如果函數(shù)名之后有上下標(biāo),在輸入上下標(biāo)之后,可以按下空格,就會出現(xiàn)代表函數(shù)參數(shù)的占位符,之后繼續(xù)輸入。

另一種方法也是在函數(shù)之后(如果有上下標(biāo)就在上下標(biāo)之后)輸入控制詞\funcapply
。\funcapply
和大型運算符的控制詞\naryand
類似,都是引導(dǎo)之后的參數(shù),也都可以使用\of
代替。如果函數(shù)的參數(shù)是組合操作數(shù),則也可以使用\begin
和\end
分隔參數(shù)。

一些中間有空格的函數(shù),例如\limsuplimsup直接使用\limsup
即可獲得。
積分和微分
積分運算符其實也是大型運算符,所以也有大型運算符的特性,也有自己不同的特性:
有參數(shù)naryand,也用
\naryand
或\of
引導(dǎo);對于參數(shù)naryand,如果參數(shù)復(fù)雜需要定界符,用
()
則括號在公式生成后不會消失,可用\begin
和\end
(或者\left
和\right
)來分隔;默認情況下,不論是在行內(nèi)還是行間,積分運算符的上下標(biāo)都在積分符號的右角標(biāo)處;
可以使用\limits和\nolimits或者在運算符之后輸入相應(yīng)數(shù)字對上下標(biāo)的位置進行自定義,使用情況參考本文大型運算符一節(jié);

其他的積分符號有

對于微分符號\mathrms0sssss00sd,UnicodeMath使用\dd
來輸入。雖然生成的微分符號看上去和在公式樣式里的d沒區(qū)別,但是會自動在前面產(chǎn)生間距。至于國標(biāo)要求微分符號是正體,就只能手動調(diào)整了。
其他微分符號有:
導(dǎo)數(shù)符號在上下標(biāo)處已經(jīng)講解,用
\prime
、\pprime
等;偏微分符號使用
\partial
;增量雖然可以使用希臘字母Δ,但是建議使用
\inc
;

標(biāo)注符號
本節(jié)的內(nèi)容不僅包括數(shù)學(xué)重音(math accent)符號,還有上下括號、帶框公式和頂線底線等。
標(biāo)注符號一類將數(shù)學(xué)重音和上下括號歸為一類,其實二者的輸入方式是不同的。
對于數(shù)學(xué)重音,要先輸入要標(biāo)注的原符號,接著再輸入不同標(biāo)注符號的控制詞,而且標(biāo)注符號還可以疊加。如果要標(biāo)注的對象不止一個符號,則要用小括號包含起來。

對于上下是箭頭的標(biāo)注,要配合\above
和\below
才能生成。

上下括號則使用和LaTeX類似的輸入方式,如果要加上說明文本,則用上下標(biāo)的形式輸入。

要輸入帶框公式,則要用到字符\rect
(?,U+25AD
),其用法和根式差不多,例如,\rect?(E=mc^2)
可以讓質(zhì)能公式被一個矩形包圍起來。
我們還可以用數(shù)字來控制包圍的樣式,用法就是\rect?(n&x)
,x表示要被包圍的公式,數(shù)字n表示了不同的顯示效果,代表的效果如下:


不過,這個用法有問題,在word里幾乎沒效果,在OneNote里反而有效果,但是最后面的兩項無論如何都無效,望知悉。
如果要添加頂線和底線,則要用\overbar
(ˉ,U+00AF
)和\underbar
(▁,U+2581
)。

極限和對數(shù)
極限和對數(shù)可以像函數(shù)一樣直接輸入。它們的下標(biāo)使用_
輸入,參數(shù)使用\funcapply
或\of
引導(dǎo)。
函數(shù)和
,有兩點要說明。
雖然生成的函數(shù)有空格,但這是直接用
\limsup
和\liminf
生成的;這兩個函數(shù)在word居然沒效果,反而在OneNote里能生成相關(guān)公式。

運算符
本節(jié)的符號和標(biāo)注符號有些不同。例如,同樣是箭頭和操作數(shù)的組合,標(biāo)注符號一節(jié)是操作數(shù)為主體,而這一節(jié)的公式形式里,箭頭是主體。同樣是利用\above
和\below
,只是輸入順序不同。

這一類中還提供了一些數(shù)學(xué)運算符,包括?、?、?,其中的?在word 2019里需要添加\meq
才能獲得,但是在OneNote里就可以直接用\meq
獲得。
另有四個符號?、==、+=和?=,可以配合\box
輸入。

矩陣
矩陣表達公式和LaTeX十分相似,格式如下
■?(exp1?[&?exp2]…?@?…?expn-1?[&?expn]…?)
其中的字符■(\matrix
,U+25A0
)表示矩陣,&用來分隔每個列,@用來分隔每個行,空矩陣單位就不輸入,最后一行/列不需要用字符分隔。例如,我們用\matrix(a&b@c&d)
可以得到
如果我們想要用括號包圍矩陣,則只需要在\matrix(a&b@c&d)
外輸入括號即可。

對于這么常用的功能,線性格式第3版也借用了LaTeX的矩陣輸入方式,引入了諸如\bmatrix
、\pmatrix
和\Bmatrix
等控制詞。

不過,word可能沒有錄入相關(guān)的控制詞,所以我們要自己添加。
\matrix
(■,U+25A0
,…)\bmatrix
(?,U+24E2
,[…])\pmatrix
(?,U+24A8
,(…))\vmatrix
(?,U+24B1
,|…|)\Bmatrix
(?,U+24C8
,{…})\Vmatrix
(?,U+24A9
,‖…‖)
如果矩陣要用到的省略號的關(guān)鍵詞有中線省略號cdots
、基線省略號ldots
、垂直省略號vdots
和對角省略號ddots
。