1 安装
1.1 windows
安装7.4版,支持office365
MathType 7.4.3.zip
这个功能可以把office公式全部转化成mathtype公式
【偏好】-【工作区偏好设置】-勾选允许从键盘输入TeX语言
在编辑框里可使用tex语言输入公式,以回车键结束
下标(单个字符时,可不加{}):x_{}
上标(单个字符时,可不加{}):x^{}
根号:\sqrt{x}
分式:\dfrac{y}{x}
1.2 mac
mac版mathtype.zip
虽然无法破解,但可以使用永久试用版,能满足大部分日常功能。
2 常用快捷键
按键 | 功能 |
---|---|
Ctrl+h | 设置上标,H理解为high |
Ctrl+l | 设置下标,L理解为low |
3 LaTeX相关
参考资料:韩锦锦,Mathtype教程小白精简版本 - 腾讯文档
3.1 理科借助 MathType 快速录入 LaTeX 代码
注意:
- 本节也可以作为MathType使用方式的一个小教程。
- 现在快速录入公式推荐 MathPix 公式识别功能,直接识别图片公式,或者在草稿纸上写好后拍照识别,往往会比自己手敲代码快的多。
(1)我们来尝试用MathType输入该公式:
(2)打开MathType,从这里选出可自适应大小的绝对值符号:
“自适应大小”在 LaTeX 术语称为“定界符号”,一般用 \left、\right 组合命令来实现。
其效果是括号大小会根据内部的内容自动变大变小:
(3) 的向量箭头可以在这里选择添加,其他特殊符号同理,
在MathType上方的符号表中能找到各种功能,一番琢磨使用后就能录好公式了。
(4)MathType复制出去默认是OLE对象,可以类似图片的形式嵌入Word文档。
该软件也支持导出 LaTeX 代码,在“选项—>剪切和复制选项…”改成下图中红圈的设置。
此时再复制公式,粘贴到其他地方,就变成 LaTeX 代码了。
注:mac版的mathtype这里要把“MathJax for Twitter”换成“GmailTeX”。
(5)操作演示:在mathtype写好公式后,将latex代码复制到录题平台并重新渲染出公式
3.2 将Word中的MathType公式批量转为LaTeX代码
3.2.1 基础操作过程
(1)MathType也支持在Word中批量把公式转换为代码:
使用“转换公式”,英文版叫“Convert Equations”
或者“切换 TeX”,英文版叫“Toggle TeX”效果类似。
(2) 窗口选项
(3)注意对于公式里有汉字的,会提示错误,可以先点击Yes跳过,后续记得检查处理。
![](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分钟完成:
(5)操作演示
这种生成出来的代码,效果还有些瑕疵,一般还会进行下述批量替换处理:
①’ [ ‘ 换成 ‘ $ ‘
②’ ] ‘ 换成 ‘ $ ‘
③’ \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
然后使用3.3.3中介绍的方法做进一步处理。
3.3 含中文字符的相关问题处理
MathType无法将中文和个别符号转为LaTeX:
3.3.1 情景1:使用AxMath来录入新的公式
如果没有历史问题,只是要制作一份新文档,想正常录入、转换带中文的公式,可以使用 AxMath 软件来录入。
AxMath 各方面的操作理念、使用方法跟 MathType 是一样的,例如转LaTeX的操作:
3.3.2 情景2:从MathType重新提取出文本
如果是一份已存在的文档中,原有MathType公式录入不规范,文字和公式混在一起录成一个大段的公式,现在要做拆分,可以使用这个情景的辅助方法。
(1)设置MathType
(2)提取文本工具: http://www.dooccn.com/python/#id/a5e4f01b57ba6bbda62b84936415077b
打开网页后往下划到有按钮的地方,按如下方式操作:
(3)清除输入栏的内容重新录入,可以解析新的公式,不用重新开网页。
清除方法:鼠标点中输入栏里的任何位置激活输入窗口,按Ctrl+A可以全选文本进行删除。
3.3.3 情景3:将MathType修正为规范的LaTeX代码
如果是已存在的文档中,MathType数据不够规范,要转成规范的LaTeX代码,可以参考这个情景解决方案。
(1)带有中文汉字、标点符号的公式
(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代码。
默认快捷键截图识别为:Ctrl+Alt+M
可以改为Ctrl+Shift+A(都在左手操作方便),并关闭企业微信截图等有冲突的快捷键设置。