以UnicodeMath在Word插入公式(4)——结构

本章将讲解如何输入公式的结构。另外要注意小括号等定界符的使用。
分式
在LaTeX中,分式往往是用控制词\frac{}{}
来输入。第一个花括号里输入分子,第二个里输入分母。例如,\frac{1}{2}为,1\frac{2}{3}为
,\frac{1}{x+1}为
。
对于UnicodeMath则要简单不少,只需要/
就可以。对于第三个例子这种分子分母是组合操作数的情况,则用小括号包含加以区分。注意,在这里输入的小括号只是作为定界符,在公式生成后就会消失。
所以,上面的例子可以用以下方式获得。

有时候公式空间太狭窄,为了美观,需要分式使用“横放”的方式,像用代替
。用UnicodeMath直接输入
/
还是会生成竖式分式,要使用\/
作为分式符号才会让公式呈现“横放”的样式。
word里的分式部分还提供了小分式这种结构,但是没有对应的控制词,只能在“公式工具”选项卡里点击输入。
除了/
之外,UnicodeMath还有竖式分式\ndiv
、斜式分式\sdiv
和横式分式\ldiv
来适应不同的需求。
以官方文档里的公式为例,则有

另外,还有二项式系数这样的分式形式,则用\atop
(¦)来获得。
注意:线性格式第3版新增了\choose
(⒞)来获得二项式系数,不用额外输入前后的小括号。但是在word 2019里无效,反而在OneNote(UWP最新版)里有效。

上下标
UnicodeMath中的下标和上标的和LaTeX的方式很相识,都是用_
表示下标,^
表示上标。和分式一样,对于组合操作数的上下标都是用小括号将其分隔。
上标和下标可以一起使用,也可以嵌套使用。嵌套使用时也要用小括号进行分隔。当上标和下标同时使用时,输入顺序无论谁先谁后都不影响公式的生成。

一阶导数符号\prime′也是一种上标,我们可以用“'”,也可以用\prime
输入。但是二阶导数和三阶导数则要用\pprime
和\ppprime
输入。

除了右边,还有在左边的上下标。使用方法都是_
表示下标,^
表示上标。对于只有下标或上标的形式,例如则要用
_1⎵F_1
或(_1^)F_1
。不过在word 2019里,只有左边都有上下标的时候有效,建议在OneNote里使用。

另外,有一个问题需要注意一下。我们有时需要输入一些化学元素的同位素,例如碳14,即。在线性格式里,应该是
^14 "C"
或(^14_)"C"
(用双引号表示文本用正体显示,详见之后的章节),结果往往得到。所以,要得到我们想要的结果,就要先输入
(^14_)
或(_^14)
,加上空格,就会得到左角标和右边的一个用虚线框表示的占位符,选中占位符,再输入"C"
,再按空格,才能得到我们想要的碳14符号。

对于大型运算符,上下标的显示则有不同。像在行间公式里,对于求和和乘积,上下标在符号的正上下方,而对于积分,则在符号的右上下方。我们可以自定义上下标的位置,详见之后的章节。
根式
平方根、立方根和四次方根可以直接用Unicode的根式字符√(\sqrt
,U+221A
)、∛(\cbrt
,U+221B
)和∜(\qdrt
,U+221C
)得到,例如

对于其他开方次数的根式,我们可以使用\sqrt(n&a)
得到。除非是复合的根式,对于一些较简单的根式,可以不用加小括号。

在线性格式第3版中,新增了\root
这种类似LaTeX的根式输入方式。

大型运算符
点开“大型运算符”,可以看到求和(\sum
)、乘积(\prod
)和副积(\amalg
)等大型运算符的共同点:不论它们有没有上下限,在它们的正右边,都一个参数——naryand。

而在UnicodeMath中,\naryand
(▒,U+2592
)就是用来输入naryand。不同于分式,naryand最外边的小括号不会在公式生成时自动消失,因为小括号的作用是用来分隔组合的naryand。如果我们不想用括号来分隔组合的naryand,可以使用控制词\begin
(〖,U+3016
)和\end
(〗,U+3017
)来作为定界符,这些字符在公式生成时就会消失。
在上一节里,可以看到我们使用控制词\root
输入根式时,还要配合\of
这个控制词。而在大型运算符中为了方便输入,也可以使用\of
(▒,U+2592
)代替\naryand
。两个控制词是等同的。甚至\naryand
也可以配合\root
用于输入根式。

在使用中,可以注意到大型运算符在行内公式和行间公式的排版效果是有区别的。在行间公式里,没有空间的限制,大型运算符的上下标是在符号的正上下方的;而在行内公式里,为了避免过于拥挤或产生难看的行距,大型运算符的上下标都变成了在右边的角标。
在LaTeX中可以使用控制词\limits和\nolimits来准确控制巨算符的上下标位置。UnicodeMath也引入这两个控制词,不过在使用过程中有一些情况要说明:
只能在行间公式中使用;
Word可能没有这两个控制词,需要的话可以参考本系列的第二篇文章,在“数学符号自动更正”选项中加入这两个控制词;
OneNote UWP版本可以使用,建议参考OneNote,将\limits替换为1,\nolimits替换为2;
UnicodeMath第3版可以在大型运算符之后输入相应的数字,让其上下标呈现不同的效果,但是只有1和2有效果,效果分别等同于\limits和\nolimits。

括号
括号(或者说定界符)有个概念,就是开符号和闭符号,也可以说左边的是开符号,右边的是闭符号。定界符可以是括号这样可见的,也可以是只表示边界但不显示的,例如\begin
和\end
(或者\left
和\right
)。
几种常见的括号(()
、[]
和{}
)我们可以直接输入,除了小括号以外的其他括号,我们也可以用控制词输入。

上面的例子有几点要了解:
左矢、右矢的符号,也是尖括号可以用
\bra
和\ket
,也可以用\langle
和\rangle
输入;方括号可以用
[]
,也可以用\lbrack
和\rbrack
输入;花括号可以用
{}
,也可以用\lbrace
和\rbrack
输入;绝对值定界符可以用竖线
|
(Shift+\),也可以用\vert
输入;在输入完右括号之后,再按空格,可以让括号大小随内容调整;
在左右括号前,用
\left
和\right
,或者\open
和\close
也可以让括号的大小随包含内容调整;左右的括号可以不同,但是左右要对应;
有时候我们需要输入的括号是如下情况:
两个单边的括号,例如
[[
和]]
;倒置括号,例如
][
;只有单边的括号有显示,另一边有边界但不显示,例如
;
我们不能直接输入,不然括号的大小自动调整会失效。这时候我们就要用到上面的\left
和\right
,即\open
和\close
控制词。

有时候要在括号内使用分隔符,我们可以使用竖线|
,不过为了避免和绝对值混淆,推荐使用\vbar
。此外,对于这样的表达式则要用到
\mid
。
如果我们对自动调节的定界符的大小不满意的话,我们还可以像LaTeX一样手动调节,只需要├(\left
或\open
)后面跟着“0”到“4”就可以,其和LaTeX的控制词的对应如下
数字 含义
0 不变
1 \big
2 \Big
3 \bigg
4 \Bigg

上述公式的输入文本为\open⎵4{\open⎵3{\open⎵2[\open⎵1(\open⎵0(x))]}}⎵
。
事例和堆栈也被归类到括号这个大类中。
事例其实可以看做是缺少另一边的括号组,缺少的一边用对应的\open
或\close
(\left
或\right
)代替。其中事例组用控制词\eqarray
或\cases
引导,使用()
将事例组包含起来,用@
分段。若要对齐就要使用&
。
而堆栈一般用在二项式系数,在分式一节已经讲解过。

函数
像这样的函数在公式里是以正体的样式显示的。使用UnicodeMath输入函数,可以直接使用
sin
,这样输入会被自动识别为函数且以正体显示。能被这样对待的函数可在“公式选项”的可识别的函数里查看,我们也能在里面添加自定义的函数。而在支持较新的UnicodeMath的软件里,例如在OneNote里,可以像LaTeX那用使用\sin
的形式。
在输入函数名之后,我们可以有两种操作方式来输入函数的参数。
如果函数名之后有上下标,在输入上下标之后,可以按下空格,就会出现代表函数参数的占位符,之后继续输入。

另一种方法也是在函数之后(如果有上下标就在上下标之后)输入控制词\funcapply
。\funcapply
和大型运算符的控制词\naryand
类似,都是引导之后的参数,也都可以使用\of
代替。如果函数的参数是组合操作数,则也可以使用\begin
和\end
分隔参数。

一些中间有空格的函数,例如\limsuplimsup直接使用\limsup
即可获得。
积分和微分
积分运算符其实也是大型运算符,所以也有大型运算符的特性,也有自己不同的特性:
有参数naryand,也用
\naryand
或\of
引导;对于参数naryand,如果参数复杂需要定界符,用
()
则括号在公式生成后不会消失,可用\begin
和\end
(或者\left
和\right
)来分隔;默认情况下,不论是在行内还是行间,积分运算符的上下标都在积分符号的右角标处;
可以使用\limits和\nolimits或者在运算符之后输入相应数字对上下标的位置进行自定义,使用情况参考本文大型运算符一节;

其他的积分符号有

对于微分符号\mathrm{d}d,UnicodeMath使用\dd
来输入。虽然生成的微分符号看上去和在公式样式里的d没区别,但是会自动在前面产生间距。至于国标要求微分符号是正体,就只能手动调整了。
其他微分符号有:
导数符号在上下标处已经讲解,用
\prime
、\pprime
等;偏微分符号使用
\partial
;增量虽然可以使用希腊字母Δ,但是建议使用
\inc
;

标注符号
本节的内容不仅包括数学重音(math accent)符号,还有上下括号、带框公式和顶线底线等。
标注符号一类将数学重音和上下括号归为一类,其实二者的输入方式是不同的。
对于数学重音,要先输入要标注的原符号,接着再输入不同标注符号的控制词,而且标注符号还可以叠加。如果要标注的对象不止一个符号,则要用小括号包含起来。

对于上下是箭头的标注,要配合\above
和\below
才能生成。

上下括号则使用和LaTeX类似的输入方式,如果要加上说明文本,则用上下标的形式输入。

要输入带框公式,则要用到字符\rect
(▭,U+25AD
),其用法和根式差不多,例如,\rect⎵(E=mc^2)
可以让质能公式被一个矩形包围起来。
我们还可以用数字来控制包围的样式,用法就是\rect⎵(n&x)
,x表示要被包围的公式,数字n表示了不同的显示效果,代表的效果如下:


不过,这个用法有问题,在word里几乎没效果,在OneNote里反而有效果,但是最后面的两项无论如何都无效,望知悉。
如果要添加顶线和底线,则要用\overbar
(¯,U+00AF
)和\underbar
(▁,U+2581
)。

极限和对数
极限和对数可以像函数一样直接输入。它们的下标使用_
输入,参数使用\funcapply
或\of
引导。
函数和
,有两点要说明。
虽然生成的函数有空格,但这是直接用
\limsup
和\liminf
生成的;这两个函数在word居然没效果,反而在OneNote里能生成相关公式。

运算符
本节的符号和标注符号有些不同。例如,同样是箭头和操作数的组合,标注符号一节是操作数为主体,而这一节的公式形式里,箭头是主体。同样是利用\above
和\below
,只是输入顺序不同。

这一类中还提供了一些数学运算符,包括≜、≝、≞,其中的≞在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可能没有录入相关的控制词,所以我们要自己添加。
\matrix
(■,U+25A0
,…)\bmatrix
(ⓢ,U+24E2
,[…])\pmatrix
(⒨,U+24A8
,(…))\vmatrix
(⒱,U+24B1
,|…|)\Bmatrix
(Ⓢ,U+24C8
,{…})\Vmatrix
(⒩,U+24A9
,‖…‖)
如果矩阵要用到的省略号的关键词有中线省略号cdots
、基线省略号ldots
、垂直省略号vdots
和对角省略号ddots
。