首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明公布】一种基于Mathtype的公式排版的方法及装置_北京仁和汇智信息技术有限公司_201810090082.1 

申请/专利权人:北京仁和汇智信息技术有限公司

申请日:2018-01-30

公开(公告)日:2018-07-13

公开(公告)号:CN108280053A

主分类号:G06F17/25(2006.01)I

分类号:G06F17/25(2006.01)I;G06F17/21(2006.01)I

优先权:

专利状态码:有效-授权

法律状态:2019.05.14#授权;2018.08.07#实质审查的生效;2018.07.13#公开

摘要:本发明提供了一种基于Mathtype的公式排版的方法及装置,其中,方法包括:预先在可扩展标记语言XML中嵌入数学标记语言mathml与wmf图片;调用公式编辑器Mathtype进行公式编辑,并保存公式编辑结果;输出所述公式编辑结果至待插入公式的PDF格式文件中。本发明在从XML文件生成PDF文件的排版系统中实现了对公式的编辑和排版,与现有技术中相比具有简单、高效的积极效果。

主权项:1.一种基于Mathtype的公式排版的方法,其特征在于,包括:预先在可扩展标记语言XML中嵌入数学标记语言mathml与wmf图片;调用公式编辑器Mathtype进行公式编辑,并保存公式编辑结果;输出所述公式编辑结果至待插入公式的PDF格式文件中。

全文数据:一种基于Mathtype的公式排版的方法及装置技术领域本发明涉及排版编辑技术领域,具体而言,涉及一种基于Mathtype的公式排版的方法及装置。背景技术在从XML文件生成PDF文件的排版系统中,排版人员有时需要在内容中插入数学公式;该操作过程中面临的问题共有:如何在XML中表示这些公式,如何编辑这些公式,如何从XML在PDF中生成最后的公式。现有技术中,一般都是通过在XML文件中保留一个表示公式的XML标签,其内容是Latex格式,用户通过使用文本编辑器编辑XML中的Latex部分,在排版生成PDF文件时先预处理XML,将所有Latex代码提取出来,调用latex生成公式,然后排版时合并这些公式至PDF文件中,最后插入到PDF的相应位置;该方案存在的问题是:系统效率较低,排版时占用系统资源过高。并且没有一个好的方法编辑这些Latex代码,由于Latex的复杂性,出现Latex错误时也不容易排除错误;这样就需要用户具备良好的Latex使用技能,对用户的要求较高。发明内容有鉴于此,本发明的目的在于提供一种基于Mathtype的公式排版的方法,以提高在从XML文件生成PDF文件的排版系统中对公式编辑和排版的效率。第一方面,本发明实施例提供了一种基于Mathtype的公式排版的方法,包括:在可扩展标记语言XML中嵌入数学标记语言mathml与wmf图片;调用公式编辑器Mathtype进行公式编辑,并保存公式编辑结果;输出所述公式编辑结果至待插入公式的PDF格式文件中。结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述在可扩展标记语言XML中嵌入数学标记语言mathml与wmf图片,包括:在XML中定义表示公式的标签,所述标签的内容包括:mathml格式内容和wmf图片格式内容;通过Mathtype的软件开发工具包SDK,将Mathtype的对象连接与嵌入OLE格式数据以注释的形式插入在所述公式的wmf图片中。结合第一方面或者第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述调用公式编辑器Mathtype进行公式编辑,并保存公式编辑结果,包括:响应于用户的操作指令,获取定义的标签的内容,将所述标签的内容传递至Mathtype编辑助手;通过所述Mathtype编辑助手对所述标签标识公式中的公式内容进行处理,使所述公式内容处于可编辑状态;响应于用户在Mathtype中保存公式的操作,通过Mathtype编辑助手调用Mathtype的软件开工具包SDK,将所述公式转换成数字标记语言,并生成包含OLE数据的wmf格式文件,将所述wmf格式文件回传给XML出版系统,更新相应的XML标签。结合第一方面或者第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述公式编辑结果包括:wmf图片文件;所述输出所述公式编辑结果至PDF格式文件中,包括:解析所述wmf图片文件,提取公式大小数据;在待插入公式的PDF文件中预排版出一个尺寸与所述公式大小数据相一致的区域;将解析所述wmf图片文件得到的每一个WMF绘图指令,转换成PDF绘图指令,执行所述PDF绘图指令,将XML标签中的公式标签按要求绘制在所述区域上;根据PDF绘图指令生成png文件,用于反馈给用户界面提供供图示功能;进而便于用户的理解和操作。结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述通过所述Mathtype编辑助手对所述标签标识公式中的公式内容进行处理,使所述公式内容处于可编辑状态,包括:通过Mathtype编辑助手检查收到的标签数据,判断所述wmf图片文件中是否存在OLE注释;如果wmf图片文件中存在OLE注释,就提取出这些注释,调用Mathtype打开公式;如果wmf图片文件中不存在OLE注释,则利用mathml调用Mathtype打开公式。第二方面,本发明实施例还提供了一种基于Mathtype的公式排版的装置,包括:嵌入模块,用于在可扩展标记语言XML中嵌入数学标记语言mathml与wmf图片;编辑模块,用于调用公式编辑器Mathtype进行公式编辑,并保存公式编辑结果;输出模块,用于输出所述公式编辑结果至待插入公式的PDF格式文件中。结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所述嵌入模块,包括:定义单元,用于在XML中定义表示公式的标签,所述标签的内容包括:mathml格式内容和wmf图片格式内容;插入单元,用于通过Mathtype的软件开发工具包SDK,将Mathtype的对象连接与嵌入OLE格式数据以注释的形式插入在所述公式的wmf图片中。结合第二方面或者第二方面的第一种可能的实施方式,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所述编辑模块,包括:传递单元,用于响应于用户的操作指令,获取定义的标签的内容,将所述标签的内容传递至Mathtype编辑助手;处理单元,用于通过所述Mathtype编辑助手对所述标签标识公式中的公式内容进行处理,使所述公式内容处于可编辑状态;转换单元,用于响应于用户在Mathtype中保存公式的操作,通过Mathtype编辑助手调用Mathtype的软件开工具包SDK,将所述公式转换成数字标记语言,并生成包含OLE数据的wmf格式文件,将所述wmf格式文件回传给XML出版系统,更新相应的XML标签。结合第二方面或者第二方面的第一种可能的实施方式,本发明实施例提供了第二方面的第三种可能的实施方式,其中,所述公式编辑结果包括:wmf图片文件;所述输出模块,包括:解析单元,用于解析所述wmf图片文件,提取公式大小数据;预排版单元,用于在待插入公式的PDF文件中预排版出一个尺寸与所述公式大小数据相一致的区域;绘制单元,用于将解析所述wmf图片文件得到的每一个WMF绘图指令,转换成PDF绘图指令,执行所述PDF绘图指令,将XML标签中的公式标签按要求绘制在所述区域上,生成单元,用于根据PDF绘图指令生成png文件,用于反馈给用户界面提供供图示功能;进而便于用户的理解和操作。结合第二方面的第二种可能的实施方式,本发明实施例还提供了第二方面的第四种可能的实施方式,其中,所述处理单元,具体用于:通过Mathtype编辑助手检查收到的标签数据,判断所述wmf图片文件中是否存在OLE注释;如果wmf图片文件中存在OLE注释,就提取出这些注释,调用Mathtype打开公式;如果wmf图片文件中不存在OLE注释,则利用mathml调用Mathtype打开公式。本发明实施例提供的一种基于Mathtype的公式排版的方法及装置,采用Mathtype进行公式编辑,将编辑的公式输出至PDF格式的文件中,在从XML文件生成PDF文件的排版系统中实现了对公式的编辑和排版,与现有技术中相比具有简单、高效的积极效果。为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1示出了本发明一个实施例所提供的一种基于Mathtype的公式排版的方法的流程示意图;图2示出了本发明一个实施例所提供的一种公式编辑器Mathtype进行公式编辑的方法流程示意图;图3示出了本发明一个实施例所提供的一种输出所述公式编辑结果至PDF格式文件的方法的流程示意图;图4示出了本发明另一个实施例所提供的一种基于Mathtype的公式排版的装置的结构示意图;图5示出了本发明另一个实施例所提供的输出模块的结构示意图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。考虑到现有技术中,在由XML文件到PDF文件的排版系统中经常会遇到对公式进行编辑排版,使用Latex进行公式编辑效率较低,易出错,界面不友好,且对用户的Latex专业技能要求较高。而数学公式编辑器Mathtype是一款使用十分普遍、门槛要求较低且十分方便的公式编辑工具;基于此,本发明实施例提供了一种基于Mathtype的公式排版的方法及装置,下面通过实施例进行描述。参照图1所示的实施例,本实施例中提供了一种基于Mathtype的公式排版的方法,该方法包括如下步骤:S101、排版系统在可扩展标记语言XML中嵌入数学标记语言mathml与wmf图片;具体的,首先在可扩展标记语言XML中定义表示公式的标签,该标签的内容包括:mathml格式内容和wmf图片格式内容;通过Mathtype的软件开发工具包SDK,将Mathtype的OLE格式数据以注释的形式插入在所述公式的wmf图片中;这样系统就可以允许用户通过编辑图片进行再次编辑公式。示例性地,上述定义的过程可以通过以下XML片段实现:1…其中,lable部分表示公式的标签,Math表示公式的mathml格式内容,graphic表示公式的图片格式内容。wmf格式的图片,是Mathtype生成的公式图片,该图片中被插入了Mathtype的OLE格式数据的注释内容。S102、调用公式编辑器Mathtype进行公式编辑,并保存公式编辑结果;具体的,参照图2所示,上述调用公式编辑器Mathtype进行公式编辑,并保存公式编辑结果,包括如下步骤:S1021、提取并解析XML标签内容,同时解析wmf图片中的注释内容,将内容拼合出Mathtype的OLE数据;S1022、启动Mathtype并传送OLE数据用于呈现;S1023、在用户进行正常修改后保存时,将OLE数据反向解析为wmf注释,并生成数学标记语语言mathml和latex,写回到XML标签。在XML出版系统中,用户点击XML标签的disp-formula时,系统获取本标签下的全部内容,通过本发明中额外设定的Mathtype编辑助手,该编辑助手为一程序段,将该标签下的全部内容传递至Mathtype编辑助手,通过所述Mathtype编辑助手对所述标签标识公式中的公式内容进行处理,使所述公式内容处于可编辑状态,具体的,Mathtype编辑助手获取本标签下的全部内容后,Mathtype编辑助手进一步判断该wmf图片中是否包含有OLE格式数据,如果有,则提取该OLE格式数据,调用Mathtype打开公式;如果该wmf图片中不包含有OLE格式数据,则系统通过使用mathml调用Mathtype打开公式;公式打开以后,用户可以对该公式进行编辑,在编辑完成以后,用户需要在Mathtype中保存公式时,系统的Mathtype编辑助手捕获用户的保存操作时,Mathtype编辑助手会调用Mathtype的软件开工具包SDK,将编辑完成的公式转换成数字标记语言,并生成包含OLE数据的wmf图片格式文件,将所述wmf图片格式文件回传给XML出版系统,更新相应的XML标签。S103、输出所述公式编辑结果至待插入公式的PDF格式文件中。上述公式编辑结果包括:wmf图片文件;参照图3所示,上述输出所述公式编辑结果至PDF格式文件中,具体包括如下步骤:S201、解析所述wmf图片文件,提取公式大小数据;上述的wmf图片文件中被插入了OLE格式数据,该OLE格式数据中包含有公式大小数据;S202、在待插入公式的PDF文件中预排版出一个尺寸与所述公式大小数据相一致的保留区域;S203、将解析所述wmf图片文件得到的每一个WMF绘图指令,转换成PDF绘图指令,执行所述PDF绘图指令,将XML标签中的公式标签按要求绘制在所述保留区域上。S204、根据PDF绘图指令生成png文件图像文件存储格式,用于反馈给用户界面提供供图示功能;进而便于用户的理解和操作。本发明实施例所提供的一种基于Mathtype的公式排版的方法,在由XML至PDF的排版系统中,使用公式编辑器Mathtype进行公式的编辑和排版,具有效率高、使用方便和对用户的操作技能要求较低的积极效果。本发明的另一个实施例中,提供了一种基于Mathtype的公式排版的装置,参照图4所示,该装置包括:嵌入模块301,用于在可扩展标记语言XML中嵌入数学标记语言mathml与wmf图片;编辑模块302,用于调用公式编辑器Mathtype进行公式编辑,并保存公式编辑结果;输出模块303,用于输出所述公式编辑结果至待插入公式的PDF格式文件中。上述嵌入模块,包括:定义单元,用于在XML中定义表示公式的标签,所述标签的内容包括:mathml格式内容和wmf图片格式内容;插入单元,用于通过Mathtype的软件开发工具包SDK,将Mathtype的对象连接与嵌入OLE格式数据以注释的形式插入在所述公式的wmf图片中。上述编辑模块,包括:传递单元,用于响应于用户的操作指令,获取定义的标签的内容,将所述标签的内容传递至Mathtype编辑助手;处理单元,用于通过所述Mathtype编辑助手对所述标签标识公式中的公式内容进行处理,使所述公式内容处于可编辑状态;转换单元,用于响应于用户在Mathtype中保存公式的操作,通过Mathtype编辑助手调用Mathtype的软件开工具包SDK,将所述公式转换成数字标记语言,并生成包含OLE数据的wmf格式文件,将所述wmf格式文件回传给XML出版系统,更新相应的XML标签。本实施例中,所述公式编辑结果包括:wmf图片文件;参照图5所示,上述的输出模块,包括:解析单元401,用于解析所述wmf图片文件,提取公式大小数据;预排版单元402,用于在待插入公式的PDF文件中预排版出一个尺寸与所述公式大小数据相一致的区域;绘制单元403,用于将解析所述wmf图片文件得到的每一个WMF绘图指令,转换成PDF绘图指令,执行所述PDF绘图指令,将XML标签中的公式标签按要求绘制在所述区域上;生成单元404,用于根据PDF绘图指令生成png文件,用于反馈给用户界面提供供图示功能;进而便于用户的理解和操作。上述处理单元,具体用于:通过Mathtype编辑助手检查收到的标签数据,判断所述wmf图片文件中是否存在OLE注释;如果wmf图片文件中存在OLE注释,就提取出这些注释,调用Mathtype打开公式;如果wmf图片文件中不存在OLE注释,则利用mathml调用Mathtype打开公式本发明实施例所提供的进行基于Mathtype的公式排版的方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。本发明实施例所提供的一种基于Mathtype的公式排版的装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。在本发明所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备可以是个人计算机,服务器,或者网络设备等执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器ROM,Read-OnlyMemory、随机存取存储器RAM,RandomAccessMemory、磁碟或者光盘等各种可以存储程序代码的介质。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

权利要求:1.一种基于Mathtype的公式排版的方法,其特征在于,包括:在可扩展标记语言XML中定义表示公式的标签,所述标签的内容包括:mathml格式内容和wmf图片格式内容;通过公式编辑器Mathtype的软件开发工具包SDK,将所述Mathtype的对象连接与嵌入OLE格式数据以注释的形式插入在所述公式的wmf图片中;响应于用户的操作指令,获取定义的标签的内容,将所述标签的内容传递至Mathtype编辑助手;通过所述Mathtype编辑助手对所述标签标识公式中的公式内容进行处理,使所述公式内容处于可编辑状态;响应于用户在Mathtype中保存公式的操作,通过所述Mathtype编辑助手调用所述Mathtype的软件开发工具包SDK,将所述公式转换成数字标记语言,并生成包含OLE数据的wmf图片格式文件,将所述wmf图片格式文件回传给XML出版系统,更新相应的XML标签;输出公式编辑结果至待插入公式的PDF格式文件中,所述公式编辑结果包括:wmf图片格式文件。2.根据权利要求1所述的方法,其特征在于,所述输出公式编辑结果至待插入公式的PDF格式文件中,包括:解析所述wmf图片格式文件,提取公式大小数据;在待插入公式的PDF格式文件中预排版出一个尺寸与所述公式大小数据相一致的保留区域;将解析所述wmf图片格式文件得到的每一个WMF绘图指令,转换成PDF绘图指令,执行所述PDF绘图指令,将XML标签中的公式标签按要求绘制在所述保留区域上;根据所述PDF绘图指令生成png文件,用于反馈给用户界面提供供图示功能;进而便于用户的理解和操作。3.根据权利要求1所述的方法,其特征在于,所述通过所述Mathtype编辑助手对所述标签标识公式中的公式内容进行处理,使所述公式内容处于可编辑状态,包括:通过Mathtype编辑助手检查收到的标签数据,判断所述wmf图片文件中是否存在OLE注释;如果wmf图片文件中存在OLE注释,就提取出这些注释,调用mathpe打开公式;如果wmf图片文件中不存在OLE注释,则利用mathml调用Mathtype打开公式。4.一种基于Mathtype的公式排版的装置,其特征在于,包括:嵌入模块,用于在可扩展标记语言XML中定义表示公式的标签,所述标签的内容包括:mathml格式内容和wmf图片格式内容;通过公式编辑器Mathtype的软件开发工具包SDK,将所述Mathtype的对象连接与嵌入OLE格式数据以注释的形式插入在所述公式的wmf图片中;编辑模块,用于响应于用户的操作指令,获取定义的标签的内容,将所述标签的内容传递至Mathtype编辑助手;通过所述Mathtype编辑助手对所述标签标识公式中的公式内容进行处理,使所述公式内容处于可编辑状态;响应于用户在所述Mathtype中保存公式的操作,通过所述Mathtype编辑助手调用所述Mathtype的软件开工具包SDK,将所述公式转换成数字标记语言,并生成包含OLE数据的wmf图片格式文件,将所述wmf图片格式文件回传给XML出版系统,更新相应的XML标签;输出模块,用于输出公式编辑结果至待插入公式的PDF格式文件中,所述公式编辑结果包括:wmf图片格式文件。5.根据权利要求4所述的装置,其特征在于,所述输出模块,包括:解析单元,用于解析所述wmf图片格式文件,提取公式大小数据;预排版单元,用于在待插入公式的PDF格式文件中预排版出一个尺寸与所述公式大小数据相一致的区域;绘制单元,用于将解析所述wmf图片格式文件得到的每一个WMF绘图指令,转换成PDF绘图指令,执行所述PDF绘图指令,将XML标签中的公式标签按要求绘制在所述区域上;生成单元,用于根据PDF绘图指令生成png文件,用于反馈给用户界面提供供图示功能;进而便于用户的理解和操作。6.根据权利要求4所述的装置,其特征在于,所述编辑模块中,通过所述Mathtype编辑助手对所述标签标识公式中的公式内容进行处理,使所述公式内容处于可编辑状态,具体用于:通过Mathtype编辑助手检查收到的标签数据,判断所述wmf图片文件中是否存在OLE注释;如果wmf图片文件中存在OLE注释,就提取出这些注释,调用Mathtype打开公式;如果wmf图片文件中不存在OLE注释,则利用mathml调用Mathtype打开公式。

百度查询: 北京仁和汇智信息技术有限公司 一种基于Mathtype的公式排版的方法及装置

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。