欢迎光临散文网 会员登陆 & 注册

以UnicodeMath在Word插入公式(2)——准备和输入

2021-08-13 15:04 作者:超级悖论  | 我要投稿

本章将讲解UnicodeMath的准备和输入方式。

准备

为了我们可以更顺利地输入并获得我们想要的公式,我们要做一些准备。

在英文输入法的条件下输入公式

word曾经有一个“feature”,就是在非英文输入法的状态下,输入的公式不会自动倾斜,在中文输入法的英文状态下也不行。虽然我用的2019版没再见过这个“特性”,但是之前的版本还是可能会遇到这个情况。

取消word的“自动更正”选项卡中的“直引号替换为弯引号”

word对输入的内容有自动更正的功能,比如将两个连字符“--”变成长划线“——”。直引号在word的UnicodeMath输入中有自己的作用,若让word“自作聪明”地修改为弯引号,会导致相关功能失效。修改方式:文件→选项→校对→自动更正选项→自动更正选项…→键入时自动套用格式→直引号替换为弯引号。

公式的字体请从文档输入第一个公式开始就要设定

word公式默认的字体是Cambria Math,有人不喜欢这个字体,word也可以更换。但是若中途更换公式的字体,那么字体只会从当前公式开始生效,之前输入的公式会保留之前的字体。

要设置公式的字体,要先选择一个公式区,在上方出现的“公式工具”选项卡中再选择“转换”标签的右下角,会跳出“公式选项”的设置窗口。在“公式区的默认字体”之后再选择字体就可以设置当前和之后的公式区的字体了。

设置公式区的字体

如果需要使用word预装之外的其他字体,那就要先安装需要的字体,然后重启word,和上面一样打开“公式选项”,就可以在字体选项中看到新安装的字体。

记住相关的快捷键可以提高输入的效率

  • 按快捷键“Alt”+“=”插入公式;

  • 按快捷键“Ctrl”+“=”转换公式为“专业”;

  • 按快捷键“Ctrl”+“z”撤回输入的内容。

转换

首先稍微讲一下UnicodeMath的工作方式。UnicodeMath其实和LaTeX有点类似,都是输入一个线性文本,定义了公式的部件和结构,然后输出为公式。只是UnicodeMath要先将类似LaTeX的控制词转换成Unicode字符,最后输出为公式。虽然听起来有些抽象,但是之后就会理解这个概念。

插入公式

如何在word里插入公式。最直接的方式就是通过选项卡命令“插入”→“符号”→“公式”,就可以在光标的位置处插入数学公式。快捷键“Alt”+“=”也能插入公式。

在使用了上述命令之后,在光标处会出现一个区域,里面有文本“在此键入公式”,这个区域就叫公式区。我们在公式区里输入的内容就会以数学的样式来显示,比如数字是正体,字母是斜体。

公式区的样式

当我们选中公式区之后,整个公式的背景会是灰色。而我们点击选中公式的某一处之后,这一部分所处的公式部件的背景会变成更深的灰色。

选中公式

数字、字母和一些运算符(+、-、=等)我们可以直接从键盘键入,但是这远远不能满足我们的需求。

“公式工具”选项卡

在插入了公式之后,word窗口上方也会出现一个“公式工具”—“设计”的选项卡,我们可以使用选项卡里的功能来辅助我们输入公式。

公式工具选项卡

选项卡分四部分。首先是“工具”,这部分有两个按钮——“公式”和“墨迹公式”。“公式”里是众多自带的常用公式,点击就可输入。而且以后我们保存自定义公式也是在这里。“墨迹公式”就是windows自带了“数学输入面板”,可以用它来识别手写的公式,并且可以直接插入word中。

其次是“转换”,这部分分为两列,左边一列是“Unicode”、“LaTeX”和“文本”,用来设定当前公式区的公式类型。我们的主题是“UnicodeMath方式输入数学公式”,所以我们在这里要选定“Unicode”按钮。右边一列是“转换”,用来让“当前”或“全部”的公式在“线性”和“专业”之间进行切换。右下角有一个箭头,点击就是打开“公式选项”,可以进行公式相关的设置。

另外两部分是“符号”和“结构”,我们可以点击它们的部件来输入公式的符号和结构。

点击符号中的部件,直接输入符号。默认的是“基础数学”分类的符号,包含了常见的数学符号。点击下拉按钮,在打开的标签的右上角也有一个下拉按钮,点击就可以打开不同分类的数学符号。

通过选项卡输入字符

点击结构中的部件,则会出现相应的结构形式。结构的组成部分由一个个虚线的方框表示的占位符组成,点击之后就可以继续输入,不仅可以输入字母数字和符号,再点击一个结构类型就可以输入结构到其中。

通过选项卡输入结构

word的“所见即所得”的特性可以让我们直观地看到公式的效果,但是一是这样点击输入有些麻烦,二是有些功能没在选项卡中提供。所以我们用到UnicodeMath这种方式。

行间公式和行内公式

公式区所在的位置不同,会让公式有行内公式和行间公式两种排版方式。如果与文字混排,那就是行内公式;如果单独为一行,则就是行间公式,公式区会自动居中。

一些公式在这两种方式会有不同的外观。以求和符Σ为例。在行间公式中,因为空间不受限制,所以求和符的极限值会在求和符的正上方和正下方;如果是行内公式,为了和文字相适应,运算符会变小,极限值会转移到求和符的侧边,在视觉上显得“局促”。

求和符的显示效果

对于上述的情况,word会自动根据当前公式的类型来调整外观。当然我们也可以对此进行手动设置。

数学符号和自动更正

LaTeX用控制词的方式来解决这个问题,例如输入\alpha我们就可以得到希腊字母%5Calpha%20。UnicodeMath也使用这种方式来达到相同目的。但是在UnicodeMath中,直接保留控制词不能得到对应的符号,要将其转换为对应的Unicode字符,就要在控制词之后再输入空格,就可以转换为对应字符,这样才能在公式中显示。

控制词为字符

对于表示公式结构的控制词,UnicodeMath也会将其转换为对应的Unicode字符,其中的一部分字符会在建立的公式中显示,例如大型运算符,另一部分则会在公式建立后消失。

我们将鼠标放在“公式工具”选项卡下的符号上,符号旁会浮现出符号的名称,大部分的符号还会浮现代表该字符的控制词。

符号浮现

注意:建议在输入符号的控制词之后就按下空格,将控制词转换为对应的Unicode字符。虽然在我们接着输入一些运算符时,这些控制词也会自动转换,但是一部分符号在样式上会和期望的结果有区别,例如后面会提到的希腊字母。

我们可以用这个方式输入大部分的字符,在“公式选项”下的“数学符号自动更正”里,我们可以查看所有支持的符号。对于不支持的符号,我们可以在这里自行添加。“替换”下输入要设定的控制词,“替换为”下输入要设定的符号。

数学符号自动更正

空格的作用

空格的另一种作用是将已输入的线性文本建立为公式。如下图所示,即使没输入公式的部分参数,用空格也能建立。

文本建立为公式

数学公式的一些括号的高度要跟随其包含的内容,而括号后输入空格可以让括号的高度自动调整。

空格还用来分隔公式的不同部分,像a_1 b_2里的空格分隔出了表达式的两个部分,得到a_1b_2而不是a_%7B1b_2%7D

空格在UnicodeMath中很常用,所以之后的内容将用⎵来表示。

可识别函数的介绍

对于函数,我们可以用像“\sin”这种形式去输入,也可以直接用“sin⎵”。这种方式仅限于常用的函数。我们可以在公式选项的“可识别的函数”里查看支持的函数,也可以在这里添加我们想要的函数。

转换选项(专业和线性)的介绍

UnicodeMath是将一串线性文本转换为公式,我们可以在“公式工具”选项卡里选择“转换”→“当前-专业(C)”来转换当前线性文本。

当前-专业

这个选项不止如此,还可以将当前已建立的公式转换为线性格式。除了转换当前的公式,我们还可以转换整个文档的所有公式。不过如果这个文档公式太多,转换全部公式容易卡顿,请谨慎使用。

不止选项卡,选定的公式区的最右边有一个下拉箭头,点击后其中也有同样的转换功能选项,还有其他的快捷功能,例如

  • 将当前公式另存为新公式,之后我们可以用“公式工具”选项卡里的公式快速输入公式

  • 将当前公式在行内公式和行间公式之间进行切换(word里成为“内嵌”和“显示”)

  • 修改当前公式的对齐方式

转换选项

从其他输入方式转换为公式

无意中发现了一种用法。首先在一些公式输入工具的网站,例如LaTeXlive,用LaTeX表达式输入公式之后,输出区域会出现目标公式,再点击下方的MathML按钮,就会复制这个公式的MathML代码,最后粘贴到word文档里的公式输入框(此时只能用“只保留文本”的方式粘贴),公式就输入到word中。此类网站不少,甚至还有像myscript这样的网站通过手写识别的方式输入公式。

windows自带的“数学输入面板”也有识别手写公式的功能,而且可以直接插入word里。这个功能也整合到了word中,就是“公式工具”下的“墨迹公式”。

不过这种方法还是有出错的可能。就像我尝试用这种方式输入麦克斯韦方程组的微分形式。

LaTeX代码:

\begin{array}{l}  

  \nabla \cdot \mathbf{E} =\cfrac{\rho}{\varepsilon _0}  \\  

  \nabla \cdot \mathbf{B} = 0 \\  

  \nabla \times  \mathbf{E} = -\cfrac{\partial \mathbf{B}}{\partial t }  \\  

  \nabla \times  \mathbf{B} = \mu_0\mathbf{J} + \mu _0\varepsilon_0 \cfrac{\partial \mathbf{E}}{\partial t }

\end{array}

输出的公式:

%5Cbegin%7Barray%7D%7Bl%7D%20%20%0A%20%20%5Cnabla%20%5Ccdot%20%5Cmathbf%7BE%7D%20%3D%5Ccfrac%7B%5Crho%7D%7B%5Cvarepsilon%20_0%7D%20%20%5C%5C%20%20%0A%20%20%5Cnabla%20%5Ccdot%20%5Cmathbf%7BB%7D%20%3D%200%20%5C%5C%20%20%0A%20%20%5Cnabla%20%5Ctimes%20%20%5Cmathbf%7BE%7D%20%3D%20-%5Ccfrac%7B%5Cpartial%20%5Cmathbf%7BB%7D%7D%7B%5Cpartial%20t%20%7D%20%20%5C%5C%20%20%0A%20%20%5Cnabla%20%5Ctimes%20%20%5Cmathbf%7BB%7D%20%3D%20%5Cmu_0%5Cmathbf%7BJ%7D%20%2B%20%5Cmu%20_0%5Cvarepsilon_0%20%5Ccfrac%7B%5Cpartial%20%5Cmathbf%7BE%7D%7D%7B%5Cpartial%20t%20%7D%0A%5Cend%7Barray%7D%0A

结果在word中的显示就成了下图这个样子,原因是上述公式中使用的是\cfrac控制词,换成\frac后就正常。

显示错误的方程组


以UnicodeMath在Word插入公式(2)——准备和输入的评论 (共 条)

分享到微博请遵守国家法律