2种办法把MathType公式转换为Word公式 您所在的位置:网站首页 我word求和公式 2种办法把MathType公式转换为Word公式

2种办法把MathType公式转换为Word公式

2023-05-06 00:20| 来源: 网络整理| 查看: 265

MathType插件提供了把Word自带公式转换为MathType公式的功能,却没有提供把MathType公式转换为Word公式的功能。出于某些特别的要求,需要把MathType公式转换为Word公式,应该怎么做呢?

注意,这里所说的Word公式,是指Word2007及以后版本中所提供的新公式,又叫OMML公式。OMML的全称是Office Math Markup Language,office数学公式标记语言。

一、高版本Word可以直接转换

Word2016及以后版本(不知道Word2013是否可以),可以右击MathType公式,在弹出菜单中单击“Equation”对象,在弹出的二级菜单中单击转换为Office Math,具体操作见如下链接。这个过程应该可以编写vba代码实现一键全文档转换,但本机没有安装Word2016或以后版本,没有办法实验。

如何将mathtype公式转化为OMML公式-百度经验二、低版本Word可以间接转换

Word2010及以前版本并没有“转换为Office Math”的功能可用。但可以通过MathType插件把MathType公式变成MathML代码,再把MathML代码粘贴到一个空的Word公式中,即可生成Word公式。

1. MathType公式变成MathML代码

MathType插件可以批量把Word文档中的MathType公式转换成MathML代码。操作路径如下图所示。

单击MathType选项卡,单击Convert Equations(转换公式),弹出Convert Equations对话框。在Equations types to convert(要转换的公式)标签下勾选MathType or Equations Editor equations;在Range(范围)标签下选择Whole document(整个文档);Convert equations to(把公式转换为)标签下选择Text using Math Type translator,然后在下拉框中选择MathML 2.0(namespace attr),下拉框下面的Include translator name as a comment和Include MathType data as a comment最好也勾选;最后单击Convert按钮完成全文档的公式转换。

MathType公式变成MathML代码

转换后的一个MathML代码如图,仅一个公式的代码就很多。

MathML代码

2. 把MathML代码粘贴到一个空的Word公式即可

按Alt+=组合键,插入一个空的公式,如下图。

复制一个公式的代码,把MathML代码粘贴到空公式内即可得到Word公式。如果是第一次粘贴,会出现如下图所示的提示,请选择“创建一个OMML公式”,并勾选“记住我的选择”,下次粘贴就不会出现这样的提示。

创建一个OMML公式

以上是一个手动的过程,如果文档中公式不多,可以采用;如果在大量公式需要转换,则会非常费时。

为了解决这个重复费时的工作,可以写一段vba代码,让其自动执行。代码如下,代码参考了这个文章http://blog.sina.com.cn/s/blog_145cd12f80102wwio.html。代码参考了文章所述的思路,但在后半段作了较大修改,在Word2010和MathType 6.9的环境下运行良好。关于在Word中如何使用vba代码的操作,请百度,有很多教程。

Sub MathML2OMML() Dim i As Integer i = 0 '设置查找表达式,查找转换后的MathML代码 With Selection.Find .ClearFormatting .Replacement.ClearFormatting .Text = "\^13" .Replacement.Text = "" .Forward = True .Wrap = wdFindStop .Format = False .MatchWildcards = True Selection.SetRange 0, 0 '回到文首 Do While .Execute With Selection .Cut '剪切MathML代码 .TypeParagraph '插入一个空段 .OMaths.Add Range:=.Range '插入一个空OMML公式。创建时自动选中 .PasteAndFormat (wdFormatPlainText) '无格式粘贴MathML代码 End With i = i + 1 Loop End With MsgBox "共转换" & i & "个公式" End Sub

以上就是在Word中,把MathType公式转换成Word自动公式的方法和步骤,希望对大家有帮助。这里是阿德办公图文,有什么不明白的,可以评论或私信交流。

《word排版技术大全》第13章 VBA基础与Word对象模型,大家可以看一下,有助于理解和使用vba代码。开通知乎盐选会员,以上电子书可以免费阅读,还有更多丰富的免费内容你可能感兴趣哦。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有