1 安装

1.1 windows

安装7.4版,支持office365
MathType 7.4.3.zip

这个功能可以把office公式全部转化成mathtype公式
image.png

【偏好】-【工作区偏好设置】-勾选允许从键盘输入TeX语言
在编辑框里可使用tex语言输入公式,以回车键结束

下标(单个字符时,可不加{}):x_{}
上标(单个字符时,可不加{}):x^{}
根号:\sqrt{x}
分式:\dfrac{y}{x}
MathType公式编辑器 - 图2
mathtype输入tex.gif

1.2 mac

mac版mathtype.zip
虽然无法破解,但可以使用永久试用版,能满足大部分日常功能。

2 常用快捷键

按键 功能
Ctrl+h 设置上标,H理解为high
Ctrl+l 设置下标,L理解为low

3 LaTeX相关

参考资料:韩锦锦,Mathtype教程小白精简版本 - 腾讯文档

3.1 理科借助 MathType 快速录入 LaTeX 代码

注意:

  1. 本节也可以作为MathType使用方式的一个小教程。
  2. 现在快速录入公式推荐 MathPix 公式识别功能,直接识别图片公式,或者在草稿纸上写好后拍照识别,往往会比自己手敲代码快的多。

(1)我们来尝试用MathType输入该公式:
MathType公式编辑器 - 图4

(2)打开MathType,从这里选出可自适应大小的绝对值符号:
image.png
“自适应大小”在 LaTeX 术语称为“定界符号”,一般用 \left、\right 组合命令来实现。
其效果是括号大小会根据内部的内容自动变大变小:
image.png

(3)MathType公式编辑器 - 图7 的向量箭头可以在这里选择添加,其他特殊符号同理,
在MathType上方的符号表中能找到各种功能,一番琢磨使用后就能录好公式了。
21.png

(4)MathType复制出去默认是OLE对象,可以类似图片的形式嵌入Word文档。
该软件也支持导出 LaTeX 代码,在“选项—>剪切和复制选项…”改成下图中红圈的设置。
22.png
此时再复制公式,粘贴到其他地方,就变成 LaTeX 代码了。

注:mac版的mathtype这里要把“MathJax for Twitter”换成“GmailTeX”。

(5)操作演示:在mathtype写好公式后,将latex代码复制到录题平台并重新渲染出公式
MathType公式编辑器 - 图10

3.2 将Word中的MathType公式批量转为LaTeX代码

3.2.1 基础操作过程

(1)MathType也支持在Word中批量把公式转换为代码:
使用“转换公式”,英文版叫“Convert Equations”
MathType公式编辑器 - 图11
或者“切换 TeX”,英文版叫“Toggle TeX”效果类似。

(2) 窗口选项
MathType公式编辑器 - 图12

(3)注意对于公式里有汉字的,会提示错误,可以先点击Yes跳过,后续记得检查处理。

  1. ![](https://cdn.nlark.com/yuque/0/2020/png/209178/1585365876726-8592d140-e0a0-4634-85f1-5b3e1d2df175.png#align=left&display=inline&height=128&margin=%5Bobject%20Object%5D&originHeight=128&originWidth=398&size=0&status=done&style=none&width=398)

(4)转换会有点慢,我电脑性能算还不错也才2秒转1个,138个公式大概5分钟完成:
MathType公式编辑器 - 图13

(5)操作演示
MathType公式编辑器 - 图14
这种生成出来的代码,效果还有些瑕疵,一般还会进行下述批量替换处理:
①’ [ ‘ 换成 ‘ $ ‘
②’ ] ‘ 换成 ‘ $ ‘
③’ \frac ‘ 换成 ‘ \dfrac ‘
④’ \text ‘ 换成 ‘ ‘ (\text{….} 把 \text 删了,只是会留下一对冗余花括号)

3.2.2 *高级进阶内容

(1)word的自动编号可能会干扰转换,导致编号错乱,故在批量转换公式前,最好执行一段vba

Sub 编号转文本()
    Dim kgslist As List
    For Each kgslist In ActiveDocument.Lists
        kgslist.ConvertNumbersToText
    Next
End Sub

(2)如果需要全自动处理的场合:
① 建议搭建一个专用的虚拟机环境,用来跑转换,不影响主机正常办公效率
详见【MathType公式转换专用虚拟机】虚拟机点我获取
② 虚拟机里还可以写个类似按键精灵的脚本,自动先点击跳过转换中有问题的公式,不用人工耗费时间来监控转换过程。
脚本位置:win7虚拟机 => 开始 => MathType转换错误点击鼠标.py

(3)转换完可以再跑这段vba脚本,黄色背景高亮显示还未成功转换的公式:

Sub 高亮所有ole对象()
    Dim i  As Integer
    Dim total  As Integer

    total = ActiveDocument.InlineShapes.Count
    Debug.Print "ole对象总数:", total

    For Each ole In ActiveDocument.InlineShapes
        ole.Range.HighlightColorIndex = wdYellow
    Next ole
End Sub

image.png

然后使用3.3.3中介绍的方法做进一步处理。

3.3 含中文字符的相关问题处理

MathType无法将中文和个别符号转为LaTeX:
image.png

3.3.1 情景1:使用AxMath来录入新的公式

如果没有历史问题,只是要制作一份新文档,想正常录入、转换带中文的公式,可以使用 AxMath 软件来录入。

AxMath 各方面的操作理念、使用方法跟 MathType 是一样的,例如转LaTeX的操作:
image.png

3.3.2 情景2:从MathType重新提取出文本

如果是一份已存在的文档中,原有MathType公式录入不规范,文字和公式混在一起录成一个大段的公式,现在要做拆分,可以使用这个情景的辅助方法。

(1)设置MathType
image.png

(2)提取文本工具: http://www.dooccn.com/python/#id/a5e4f01b57ba6bbda62b84936415077b
打开网页后往下划到有按钮的地方,按如下方式操作:
image.png

(3)清除输入栏的内容重新录入,可以解析新的公式,不用重新开网页。
清除方法:鼠标点中输入栏里的任何位置激活输入窗口,按Ctrl+A可以全选文本进行删除。

3.3.3 情景3:将MathType修正为规范的LaTeX代码

如果是已存在的文档中,MathType数据不够规范,要转成规范的LaTeX代码,可以参考这个情景解决方案。

(1)带有中文汉字、标点符号的公式
MathType公式编辑器 - 图20

(2) 方法
方法1:将汉字先改成字母,复制出LaTeX后再手动修改为\text{xx}
方法2:使用MathType的「Toggle Tex」功能,然后手动补充丢失的中文字符。
为了防止遗忘,建议复制一个出来处理,处理好后再删除原始公式。
方法3:使用office365等高版本,可以将MathType公式转为Office自带公式

![](https://cdn.nlark.com/yuque/0/2020/png/209178/1585363553504-888043be-e5c8-423d-8843-b2bf3644b2bc.png#align=left&display=inline&height=271&margin=%5Bobject%20Object%5D&originHeight=271&originWidth=464&size=0&status=done&style=none&width=464)

(3)其他一些公式转换异常问题(例如双击打开看到的公式并不是在word中直接预览OLE对象的内容),
导致未转换、转换出来的内容是错误的,或者是图片。
可以使用mathpix工具,识别为LaTeX代码。
MathType公式编辑器 - 图21
默认快捷键截图识别为:Ctrl+Alt+M
可以改为Ctrl+Shift+A(都在左手操作方便),并关闭企业微信截图等有冲突的快捷键设置。