返回

Unicodemath:在word、PowerPoint、excel中优雅地输入公式

你还在到处找公式识别、墨迹转公式的软件吗,不如来学学如何输入公式吧。熟练了也挺快的。

简介

对于理工科的学生,经常会遇到在文档或笔记中插入公式情况。

一般而言,最为标准的公式写法是Latex,但是这种格式比较复杂,学习成本较高。

另外一种方法是找现成的公式,然后再用各种工具转化成可以使用的格式。例如,使用Mathpix和OnenoteGem等进行插入。不过现在二者都收费了,其次用这个识别效果有时候并不是很好,最后只能抄现成的公式。

实际上Office系列的软件都自带了UnicodeMath这样一种公式输入方式。相较于Latex它要更加方便和容易理解。使用UnicodeMath输入公式,就和我们平时摁计算器一样。

下面我将介绍一下它的使用方法,这个熟练之后也挺快的。

快速入门

对于OneNote(包括桌面版和Windows10版)、Word和PowerPoint,只需在输入的时候按下Alt+=,即可唤出公式编辑器:

最简单的使用方式就是通过“公式”栏点选需要输入的符号和结构。

对于每一栏,按向下的小箭头都可以展开。用这种方法理论上是可以输入任何公式的,不过效率上实在是太慢了。

注意:对于Onenote For Windows10,不显示“公式”选项卡,但是可以直接键盘输入,和Word相同。怀疑是同一个内核,界面不同

接下来我们介绍一下如何从键盘上输入公式。

自动修正

使用**“自动修正”**功能进行特殊符号的输入。

自动修正功能可以将代号转化为对应的符号,使用“\”开始一段代号输入(在回车键上方),例如,输入希腊字母β,只需要键入\beta再按空格即可。

对于新版Word,在公式选项卡中,只需要将鼠标悬浮在某个符号上,即可显示对应的代号。如图所示。这样我们要输入无穷大符号,只需要键入\infty

如果您曾经使用过Latex,不难发现此处的字母修正与Latex中的规则非常类似,故在Latex和Unicode math之间切换是非常容易的。不过Unicode math输入分数等更加简洁和易读。

**请注意输入的时候尽量不要用中文,您可以安装一个英文键盘,参考Windows切换英文键盘。**在word中这一要求并不严格,您可以使用微软拼音中的英文模式进行输入,但在OneNote中,可能会造成格式上的错误和乱码。已知,在输入过程中切换中英文容易造成字体的变动。

希腊字母系列均可以用\+英语名称形式输入,首字母大写为大写字母,小写为小写字母。实际上,在最新版的微软拼音中,您可以直接在中文模式下,用这些代号输入希腊字母。更多内容请打开Word自行查看。

符号(公式) 输入方式-先按“Alt”和“+”进入公式模式,输入后按空格即可自动转换
α \alpha (这一块Latex和UnicodeMath是通用的)
β \beta
δ \delta
Δ \Delta

您也可以输入一些特殊符号,例如左右箭头,积分符号,点乘叉乘。

符号(公式) 输入方式-先按“Alt”和“+”进入公式模式,输入后按空格即可自动转换
\leftarrow 或者 \gets
\rightarrow 或者 \to
\int
\times
\cdot

分数、上标、下标等

在Unicode math中,格式控制也非常方便。

输入完后,直接接上你想要放置于对应位置的内容,再按空格即可。

符号(公式) 输入方式-先按“Alt”和“+”进入公式模式,输入后按空格即可自动转换
上标 ^
下标 _
上方符号 \above
下方符号 \below
分数 /

按照这种方法就可以很方便的输入公式了,我之后会录一个视频,大家可以参考一下。

其他参考资料:

括号和空格

在输入复杂公式时,我们可能会遇到歧义的情况,例如a/b^2/3可以理解为对b求平方,也可以理解为对a/b分数整体求2/3次方,以及a/bc/d可以理解为一个三重分数,也可以理解为两个分数相乘。正确运用括号和空格可以极大优化输入。

**括号用于表征一个整体。**例如(a/b)^(2/3)即表示对a/b分数整体求2/3次方,无歧义。输入完成后按下空格即可。当生成的格式中,不再需要用括号做强调时,程序会自动消除括号,例如指数上2/3的括号会消除,但是a/b的括号不会消除。

又比如,在使用\sqrt构建开根运算时,我习惯性先打下一个\sqrt (),在括号里完成输入之后,再到末尾按下空格,就可以保证括号里所有内容都正确地放置于根号内。

生成根式需要按两次空格

**空格用于表征一个块元素的结束。**例如a/bc/d,程序会生成一个三重分数,但是a/b c/d则是两个分数相乘。同样的,**当生成的格式中,不再需要用空格做强调时,程序会自动消除空格。**此处生成的两个相乘分数中是没有空格的。

开根、积分、求和、极限第三个参量

对于较为复杂的公式,例如带有上划线、下划线,积分有上下限、求和有指标的范围等等情况,Unicodemath也有简单的输入方法。

首先是对应这些符号的自动更正。注意,写下代码后,空格一次生成符号,空格两次生成格式。

Control word
\int
\oint
\sum
\prod
\sqrt

当我们需要规定积分上下限和积分核,总共三个参量时,可以直接将所有元素打在一起,例如输入\int ^\infty _0 ,空格,将会生成一个从零到正无穷的积分(注意中间的两个空格,需要先生成全部符号,再在公式尾按空格生成格式),并生成一个可以输入积分核的控件。

求极限可以直接输入lim并空格,ln也是,不需要\。

公式编号

在公式结尾使用#(1)并回车,进行编号。

如需进行自动编号,可以参考本文:Word中给公式自动编号 - 知乎 (zhihu.com)

线性格式和专业格式

实际上,我们所输入的均为线性格式,而程序会自动将线性格式转化为专业格式,即有上下标、分数的形式。

但有时,我们要输入线性格式单位,或者纵向空间很小,要使用线性格式节省空间。此时需要手动调节回线性格式。

注意:线性化只对此次输入有效,如果您在线性化后的公式后再按下空格,又会转化为专业格式。

关于物理学中的单位

单位是正体。可以选中单位使用Ctrl+I切换。

关于Latex和UnicodeMath的互相转化

注意:不确定本方法是否有效,感觉并没有转化,只是将源代码展示出来了而已

虽然UnicodeMath输入比较简单,但是很多地方还是只支持Latex,例如知乎和Typora。

我们可以使用Word自带的功能进行转换,这样就可以先用Unicode写,然后转成Latex复制到其他平台了

参考:如何超迅速地把Word的公式转换成LaTeX公式 - 知乎 (zhihu.com)

附表

Control word Control word
\int \underbrace
\oint \overbrace
\sum \begin
\prod \end
\funcapply \phantom
\naryand,\of \box
\rect \hphantom
\sqrt \vphantom
\open \asmash
\close \dsmash
\above \hsmash
\below \smash
\underbar \matrix
\overbar ̄ \eqarray

附录

Reference

  1. Word中给公式自动编号 - 知乎 (zhihu.com)
  2. 告别 LaTeX 公式编辑——UnicodeMath 使用手册 - 知乎 (zhihu.com)

版权信息

本文原载于kermsite.com,复制请保留原文出处。

Built with Hugo
Theme Stack designed by Jimmy