坑边闲话:笔者在 2015 年到 2019 年的四年里,在数学专业度过了自己快乐的大学时光。虽说数学专业写论文一般用 $\LaTeX$,但是据我所知,数学专业里能手动定制 $\LaTeX$ 模板的人比较少,但是能用 Word 定制模板的人比较多。微软的 Word 也不是吃素的,基本上 $\LaTeX$ 能做的 Word 也可以,但是需要一些高级的技巧。本文从 Word 公式录入出发,介绍一个适合 Office365 用户的公式解决方案。

与本文章相关的所有内容,都可以在这个 GitHub 仓库里找到!

1. 一切基于 Microsoft Office 365·

1.1 Office 365·

本库的基础软件是 Windows 10 Office 365(下称 365),一般的 Office 2016 / 2019 可行性未知。Office 365 会给与最新的软件支持,所以在兼容性与新特性上面会有相当大的优势。

⚠️ 如何低价购买正版 Office 365?可淘宝搜索「Office 365 家庭版拆分」关键词。

下图显示了 Office365 的公式菜单,可以看到,已经官方支持 $\LaTeX$ 语法了!

图 1. Word menu

特别注意

Office 365 的全部功能已经在 macOS 10.14.5 及以后的版本里得到了支持,而且,Word for macOS 也支持 LaTeX 语法输入

1.2 mathpix 软件·

Mathpix 是一个公式 OCR 软件,通过该软件,可以提取图片中的印刷体公式。虽然该公司声称该软件可以提取手写的公式,但是实际效果并不好。

直接在官网下载二进制安装包即可使用。目前已经有比较好的解决方案,所以不再提供安装包下载。

如果可以把上述几个软件结合使用,那么在写论文的背景知识的过程中,写公式效率可以提升 10 倍左右!

1.3 latexLive.com 网站·

这个网站是著名的哔哩哔哩 UP 主【妈咪说 MommyTalk】开发的一款 web 程序,该程序内部集成了 mathpix 的接口,可以非常方便地进行公式在线编辑、公式 OCR. 在 Windows10 系统上通过 win Shift S 键截图到剪贴板,然后在 latexLive.com 网站对应页面进行全局粘贴,可以很快速地实现 OCR,macOS 也可以通过某些截图软件实现该功能。

图 2. latexLive.com 威力强大!

2. 为什么不用 MathType 等插件·

2.1 收费软件·

价格很昂贵,而且盗版体验很差,注意:免费的永远是最贵的!

其他的诸如 Axmath 之类的小众软件,输出效果不错,不过输出的 PDF 是不可选中、不可搜索版本,格式应该是某种矢量图(放大之后可以明显看到不光滑的边界)。

2.2 Office 365 内置功能原生、优秀·

Office365 的内置公式比较强大。渲染之后与原文档锲合度最高。

虽然 Office365 也是付费软件(淘宝家庭版拆分装,仅 50 RMB / 年),不过在当下中国的大学,没有微软的 Word 还真的是玩不转,不如弃暗投明。用好 Word,一样能做出漂亮的文稿。这里就不谈 Word 与 LaTeX 的优劣了。

365 内置的公式,支持段落调节,而 MathType 等插件生成的公式,不支持自动调节,在某些情况下很是难看。

3. 安装字体·

要使用下面这个 demo 方案,需要安装一款字体:Latin Modern Math. 本 Repository 已经给出,直接切换到 fonts/01. Latin Modern Math/otf/ 文件夹下,找到 latinmodern-math.otf 文件,右键 -> 安装即可。macOS 用户自己对照摸索,非常简单。

这个字体相对比较好看,不过这里也提供了其他一些解决方案

4. 示例·

4.1 在 Word 中利用原生公式编译器·

在 Windows Office 365 Word 里面(PPT 不支持):

  • Step 1 按下 Alt = 调出公式输入框
  • Step 2 按下 Ctrl Shift = 将公式转为线性,同时在公式选项卡里把公式切换为 $\LaTeX$
  • Step 3 复制黏贴这段代码到公式输入框:
1
\left(x+a\right)^n=\sum_{k=1}^{n}\int_{t_1}^{t_2}{\binom{n}{k}{f(x)}^ka^{n-k}}\box(24&dx)
  • Step 4 按下 Ctrl = 渲染公式。注意,如果你是在表格中输入公式,那么需要手动右键更改为专业模式,快捷键不起作用。

图 3. 在 Microsoft Word 中输入 LaTeX 代码,稍后即可渲染成可见的公式。

图 4. 经过 Microsoft Word 内部的渲染器处理,LaTeX 数学公式成功被转换为 Word 公式对象。

Just enjoy it.

4.2 利用 latexlive.com 导出 MathML 对象粘贴到 Word·

图 5. 从 web 程序复制 MathML 对象到 Word

如果你的网络访问 latexLive.com 没问题的话,建议使用这个方法。因为 Word 自带的编辑器有可能抽风。

5. 输出 Word 为 PDF 文档·

书写论文、一般文档的重要一步就是将 docx 导出为 PDF,嵌入了所需字体的 PDF 文件会以精准的方式呈现文档的原貌。

这里的原则是:尽可能使用 Word (Office 365) 的原生功能,而不是借助第三方的插件。

5.1 Windows 10 平台·

Windows 10 自带的导出功能并不完善,对于我们最常用的数学字体 Latin Modern Math 的支持不好,如果强行使用 Word 的导出功能,会使得输出的 PDF 中的数学公式为位图形式,锯齿感严重。这这里我们直接选择用虚拟打印机将 DOCX 文档打印成 PDF.

图 6. Windows 10 平台的 Office365 Word,应选择合适的转换软件,如 Acrobat Pro DC 才可以正确将 docx 导出为 PDF.

如上图,【文件】- 【打印】 - <选择打印机>,使用 Word for Windwos 自带的打印功能,其中选择打印机为 Microsoft Print to PDF 这款虚拟打印机,然后点击打印,即可完美实现 PDF 输出。

5.2 macOS 平台·

macOS 平台的输出比较简单,只需要 Command Shift C ,另存为 PDF ,即可实现完美输出。