文件格式转换方法、系统、计算机设备及存储介质与流程

文档序号:24131948发布日期:2021-03-02 18:30阅读:130来源:国知局
文件格式转换方法、系统、计算机设备及存储介质与流程

[0001]
本发明实施例涉及文件转换技术领域,特别涉及一种文件格式转换方法、系统、计算机设备及存储介质。


背景技术:

[0002]
现有技术中,具有固定版式页面内容的文件,其文档编辑体验差,仅能进行局部编辑并阅览传播,不能进行全文编辑,并且缺少一些展示特性,如特效、动画及模板等,即无法满足演示方面的需求。


技术实现要素:

[0003]
本发明实施例提供了文件格式转换方法、系统、计算机设备及存储介质,旨在解决具有固定版式页面内容的文件不能全文编辑、无法满足演示需求的问题。
[0004]
第一方面,本发明实施例提供了一种文件格式转换方法,其包括:
[0005]
解析初始文件中的元素信息,并进行分页保存;
[0006]
生成所述元素信息对应的元素信息标签,并将所述元素信息标签写入xml文件中;
[0007]
将所述xml文件进行压缩,并对压缩文件的后缀名进行更改,以获取格式转换后的目标文件。
[0008]
第二方面,本发明实施例提供了一种文件格式转换系统,其包括:
[0009]
文件解析单元,用于解析初始文件中的元素信息,并进行分页保存;
[0010]
文件标签写入单元,用于生成所述元素信息对应的元素信息标签,并将所述元素信息标签写入xml文件中;
[0011]
目标文件获取单元,用于将所述xml文件进行压缩,并对压缩文件的后缀名进行更改,以获取格式转换后的目标文件。
[0012]
第三方面,本发明实施例又提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的文件格式转换方法。
[0013]
第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的文件格式转换方法。
[0014]
本发明实施例提供了文件格式转换方法、系统、计算机设备及存储介质,其中,方法包括:解析初始文件中的元素信息,并进行分页保存;生成所述元素信息对应的元素信息标签,并将所述元素信息标签写入xml文件中;将所述xml文件进行压缩,并对压缩文件的后缀名进行更改,以获取格式转换后的目标文件。本发明实施例通过将初始文件格式转换成目标文件格式,满足了用户对及时修改文档内容的需求,同时也满足了用户演示过程中展示文件特性的需求。
附图说明
[0015]
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0016]
图1为本发明实施例所提供的一种文件格式转换方法的流程示意图;
[0017]
图2为本发明实施例所提供的一种文件格式转换系统的示意性框图。
具体实施方式
[0018]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0019]
应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
[0020]
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0021]
请参阅图1,图1为本发明实施例提供的一种文件格式转换方法的流程示意图,该方法可以包括步骤s101~s103:
[0022]
s101、解析初始文件中的元素信息,并进行分页保存;
[0023]
在本步骤中,对初始文件进行解析,获取其中的元素信息,然后将这些元素信息分页保存。其中分页保存可以是将一种元素信息单独保存,也可以是将多种元素共同保存,根据需求选择合适的保存方式。
[0024]
在一具体实施例中,步骤s101包括:
[0025]
解析并提取初始文件中的元素信息;
[0026]
将元素信息输入至转换层,对元素信息中的单位及坐标进行转换,并按元素类型将转换后的元素信息保存至不同的结构体中。
[0027]
在本实施例中,在对初始文件进行解析后,通过识别算法将初始文件中的元素信息进行提取,然后将元素信息输入至转换层,通过转换层将单位以及坐标转换为目标文件适用的格式,并保存至不同结构体中。结构体是一种集合,它里面包含了多个变量或数组,它们的类型可以相同,也可以不同,每个这样的变量或数组都称为结构体的成员。其中,初始文件可以是pdf文件、word文件等office常用文件,目标文件可以是目标文件。
[0028]
在一具体实施例中,将元素信息输入至转换层,对元素信息中的单位及坐标进行转换,并按元素类型将转换后的元素信息保存至不同的结构体中包括:
[0029]
将元素信息输入至转换层对元素信息中的单位及坐标进行转换,获取转换后的元素信息;
[0030]
为每一元素信息设置对应的结构体,通过结构体中的变量接收及更新对应的元素信息。
[0031]
在本实施例中,将元素信息保存至结构体后,通过结构体中的变量接收及更新该
结构体中保存的元素信息。在结构体中可以设置一个变量或者多个变量,并未每一个变量赋予对应的元素信息,通过修改对应的变量,对元素信息进行对应修改。
[0032]
s102、生成元素信息对应的元素信息标签,并将元素信息标签写入xml文件中;
[0033]
在本步骤中,通过对所提取的元素信息进行处理,获得对应的元素信息标签,然后将元素信息标签写入xml文件中。
[0034]
在一具体实施例中,步骤s102包括:
[0035]
通过rapidxml框架中的文件上传接口将元素信息与对应的标签进行绑定,以获得元素信息标签;其中,元素信息包括文本数据、表格以及路径中的至少一种;
[0036]
通过文件写入接口将元素信息和对应的元素信息标签写入xml文件中。
[0037]
在本实施例中,通过rapidxml框架中的文件上传接口(即putobject())将元素信息与对应的元素信息标签进行绑定,然后通过文件写入接口(即writenode())将元素信息与对应的元素信息标签写入xml文件。rapidxml是一个试图创建最快的针对xml(可扩展标记语言)dom分析器(dom即文档的标准模型),当然同时也保留它的可用性、移植性和适当的w3c兼容性(w3c即万维网联盟,是web技术领域最具权威和影响力的国际中立性技术标准机构。)。其中文本数据包括文本内容,是否粗体、斜体、字号、字颜色、下划线、删除线、文字颜色、背景颜色、超链接;表格是由表格文本、边框线和单元格样式、图标样式、表格样式、占位符样式、段落样式、行间距等信息组成的;路径由位置、粗细、路径颜色,形状样式,形状颜色、贝茨码组成。不同类型的元素信息可以由不同的结构体存放,同种类型的元素信息也可以由不同的结构体存放,根据需求进行选择即可。
[0038]
在一具体实施例中,通过文件写入接口将元素信息和对应的元素信息标签写入xml文件中包括:
[0039]
先将目标文件所需的默认标签写入至xml文件中;
[0040]
再将元素信息和对应的元素信息标签写入xml文件中。
[0041]
在本实施例中,在xml文件写入的标签中,包含有两类标签,一类是目标文件所需要的默认标签,另一类则是写入具体元素所需要的元素信息和对应的元素信息标签。其中默认标签需要在写入具体元素之前写入xml文件中,因此先将默认标签写入xml文件后,再写入元素信息和对应的元素信息标签,以呈现完整的元素效果。
[0042]
在一具体实施例中,将元素信息和对应的元素信息标签写入xml文件中包括:
[0043]
创建第一文件和第二文件;
[0044]
将默认标签以及元素信息和对应的元素信息标签中的一部分写入至第一文件,并将元素信息和对应的元素信息标签中的另一部分写入至第二文件;
[0045]
将第一文件和第二文件进行合并,得到xml文件。
[0046]
在本实施例中,由于默认标签需要先进行写入,因此将默认标签全部写入第一文件后,继续在第一文件中写入元素信息和对应的元素信息标签的一部分,然后将元素信息和对应的元素信息标签的剩余部分写入第二文件中,将第一文件和第二文件合并得到xml文件。这里所说的合并是通过创建第三文件,将第一文件和第二文件的内容按顺序拼接写入第三文件中,所获得具有的默认标签以及元素信息和对应的元素信息标签的第三文件,该第三文件即为xml文件。这种合并方式可以防止因一次性在同一文件中写入过多内容而导致内存崩溃。在获得第三文件后将第一文件和第二文件删除,以减少内存。
[0047]
以获取的目标文件为目标文件为例,具体的,默认标签主要包括:<key:presentation>、<key:size>、<key:theme-list>、<key:slide-list>。其中,<key:presentation>是目标的xml结构中的一级标签,所有写入标签,都被包含其中;<key:size>是一级标签下的次级标签,内部属性表示页面的长宽;<key:theme-list>是二级标签,其中包含的子标签内容和属性表示幻灯片主题的一些样式,可供slidelist.xml中page标签中的元素内容调用,此标签及其子标签都被写入到了themelist.xml中,主要包含<key:theme><key:stylesheet><key:master-slides><key:master-slide><key:page>这些子标签;<key:slide-list>是二级标签,其中包含的子标签内容和属性表示主要的幻灯片的内容和属性,其标签和子标签元素被写入到slidelist.xml中,其中主要包含<key:slide>、<key:stylesheet>、<key:page>这些子标签,其中最主要的便是<key:page>标签,里面写入的是具体元素内容,其它子标签内部包含的是元素属性。
[0048]
s103、将xml文件进行压缩,并对压缩文件的后缀名进行更改,以获取格式转换后的目标文件。
[0049]
在本步骤中,将写好的xml文件进行压缩,生成后缀名为zip的文件压缩包,然后将该文件压缩包的后缀名进行更改,以获得目标文件。
[0050]
在一具体实施例中,当初始文件中包含有图片数据时,步骤s103包括:
[0051]
将图片数据写入二进制文件中,以获取jpeg格式图片;
[0052]
将jpeg格式图片和xml文件进行压缩,并对压缩文件的后缀名进行更改,以获取格式转换后的目标文件。
[0053]
在本实施例中,当初始文件中不仅包含文本数据、表格以及路径这些元素信息,还包含有图片时,将图片数据写入二进制文件中,并更改后缀名为jpeg,以获得jpeg格式图片,然后将jpeg格式图片与xml文件共同压缩为zip格式的文件压缩包,然后再对文件后缀名进行更改,以得到目标文件。
[0054]
请参阅图2,图2为本发明实施例提供的一种文件格式转换系统的示意性框图,该文件格式转换系统200包括:
[0055]
文件解析单元201,用于解析初始文件中的元素信息,并进行分页保存;
[0056]
文件标签写入单元202,用于生成元素信息对应的元素信息标签,并将元素信息标签写入xml文件中;
[0057]
目标文件获取单元203,用于将xml文件进行压缩,并对压缩文件的后缀名进行更改,以获取格式转换后的目标文件。
[0058]
在一实施例中,文件解析单元201包括:
[0059]
元素信息提取单元,用于解析并提取初始文件中的元素信息;
[0060]
元素信息转换单元,用于将元素信息输入至转换层,对元素信息中的单位及坐标进行转换,并按元素类型将转换后的元素信息保存至不同的结构体中。
[0061]
在一实施例中,文件标签写入单元202包括:
[0062]
标签绑定单元,用于通过rapidxml框架中的文件上传接口将元素信息与对应的标签进行绑定,以获得元素信息标签;其中,元素信息包括文本数据、表格以及路径中的至少一种;
[0063]
xml文件生成单元,用于通过文件写入接口将元素信息和对应的元素信息标签写
入xml文件中。
[0064]
在一实施例中,xml文件生成单元包括:
[0065]
默认标签写入单元,用于先将目标文件所需的默认标签写入至xml文件中;
[0066]
元素信息标签写入单元,用于再将元素信息和对应的元素信息标签写入xml文件中。
[0067]
在一实施例中,元素信息标签写入单元包括:
[0068]
文件创建单元,用于创建第一文件和第二文件;
[0069]
分页写入单元,用于将默认标签以及元素信息和对应的元素信息标签中的一部分写入至第一文件,并将元素信息和对应的元素信息标签中的另一部分写入至第二文件;
[0070]
文件合并单元,用于将第一文件和第二文件进行合并,得到xml文件。
[0071]
在一实施例中,元素信息转换单元包括:
[0072]
转换成输入单元,用于将元素信息输入至转换层对元素信息中的单位及坐标进行转换,获取转换后的元素信息;
[0073]
结构体设置单元,用于为每一元素信息设置对应的结构体,通过结构体中的变量接收及更新对应的元素信息。
[0074]
在一实施例中,目标文件获取单元包括:
[0075]
jpeg格式图片获取单元,用于将图片数据写入二进制文件中,以获取jpeg格式图片;
[0076]
图片与文件压缩单元,用于将jpeg格式图片和xml文件进行压缩,并对压缩文件的后缀名进行更改,以获取格式转换后的目标文件。
[0077]
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的一种文件格式转换方法。
[0078]
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的一种文件格式转换方法。
[0079]
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
[0080]
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1