[发明专利]对UOF文档进行转换的方法有效
申请号: | 202111388257.5 | 申请日: | 2021-11-22 |
公开(公告)号: | CN114218895B | 公开(公告)日: | 2022-08-19 |
发明(设计)人: | 王丹星;周韩钰;余丹 | 申请(专利权)人: | 慧之安信息技术股份有限公司 |
主分类号: | G06F40/151 | 分类号: | G06F40/151;G06F40/205 |
代理公司: | 北京广技专利代理事务所(特殊普通合伙) 11842 | 代理人: | 安琪 |
地址: | 100000 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | uof 文档 进行 转换 方法 | ||
1.对UOF文档进行转换的方法,其特征在于,其包括如下步骤:
步骤S1,对ODF文档进行解压处理和解析处理,从而得到相应的文档解析输出;
步骤S2,对所述文档解析输出进行样式分析,从而得到关于所述ODF文档的文档属性数据;对所述文档属性数据进行预处理,从而得到相应文档样式属性数据和文档分节属性数据;再对所述文档样式属性数据和所述文档分节属性数据进行转换处理,从而得到与所述ODF文档对应的UOF文档;
步骤S3,在文档外部接口的层面上,构建关于所述UOF文档的动态链接库、可执行文件库、注册表和日志系统,从而实现对所述UOF文档的二次开发和转换处理;
步骤S4,在用户界面上显示对所述UOF文档进行转换处理的实时信息;其中,在所述步骤S2中,对所述文档解析输出进行样式分析,从而得到关于所述ODF文档的文档属性数据具体包括:
对所述文档解析输出进行样式分析,从而得到所述ODF文档包含的段落属性数据、文字属性数据、大纲属性数据、表格属性数据和图像属性数据;
再定义getID函数对所述段落属性数据、所述文字属性数据、所述大纲属性数据、所述表格属性数据和所述图像属性数据进行处理,从而生成所述段落属性数据、所述文字属性数据、所述表格属性数据和所述图像属性数据各自对应的属性编号值;
其中,在所述步骤S2中,对所述文档解析输出进行样式分析,从而得到所述ODF文档包含的段落属性数据、文字属性数据、大纲属性数据、表格属性数据和图像属性数据;再定义getID函数对所述段落属性数据、所述文字属性数据、所述大纲属性数据、所述表格属性数据和所述图像属性数据进行处理,从而生成所述段落属性数据、所述文字属性数据、所述表格属性数据和所述图像属性数据各自对应的属性编号值具体包括:
所述文档中的不同属性的数据在进行连接时会在不同属性的数据中间存在一串连接符,根据所述连接符能够将所述文档解析输出分割成多个属性数据,接着根据每个属性数据中每个字节的属性定义将属性定义相同的属性数据归为一类,然后再定义getID函数以此根据归为一类的属性数据中每个字节的属性定义得到其对应的属性编号值,其具体过程为:
步骤S201,利用下面公式(1),根据所述连接符将所述文档解析输出分割成多个属性数据,
在上述公式(1)中,μi表示所述解析输出的文档中第i个字节处属于分割点的判定值;Di+a表示所述文档解析输出中第i+a个字节的二进制形式数值;P1+a表示所述连接符的第1+a个字节的二进制形式数值;n表示所述连接符的字节总数;m表示所述文档解析输出的字节总数;
将i的值从1取值到m-n+1得到所有满足μi=0的i值,在所述所有满足μi=0的i值处的字节与其上一个字节的中间处作为分割点,对所述文档解析输出进行分割,分割完成后得到多个属性数据;
步骤S202,通过上述步骤S201分割得到的多个属性数据,每个属性数据内部中每个字节的属性定义都是一致的,并且每个属性定义的名称也是由多个字节构成,利用下面公式(2),根据每个属性数据中每个字节的属性定义将属性定义相同的属性数据归为一类,
在上述公式(2)中,H(r1,r2)表示分割完成后的第r1个属性数据与第r2个属性数据能否归为一类的判定值;Tr1,e表示分割完成后的第r1个属性数据的属性定义名称中的第e个字节的二进制形式数值;Tr2,e表示分割完成后的第r2个属性数据的属性定义名称中的第e个字节的二进制形式数值;Br1表示分割完成后的第r1个属性数据的属性定义名称中的字节总数;Br2表示分割完成后的第r2个属性数据文档的属性定义名称中的字节总数;min()表示求取括号内的最小值;
若H(r1,r2)≠0,表示分割完成后的第r1个属性数据与第r2个属性数据中字节的属性定义名称不同,即不能进行合并;
若H(r1,r2)=0,表示分割完成后的第r1个属性数据与第r2个属性数据中字节的属性定义名称相同,即能够进行合并;
通过上述步骤S202对分割得到的多个属性数据两两进行对比,将对比后的具有相同属性定义名称的属性数据全部合并归为一类,而合并为一类的属性数据即为所述段落属性数据、所述文字属性数据、所述大纲属性数据、所述表格属性数据或者所述图像属性数据;
步骤S203,利用下面公式(3)作为getID函数,根据合为一类的属性数据中的字节个数以及合为一类的属性数据的属性定义名称,得到其对应的属性编号值,
getID(C)={Tc<<L[(Sc)2]+(Sc)2}10 (3)
在上述公式(3)中,getID(C)表示合为一类的属性数据文档中的第C类属性数据文档的属性编号值;Tc表示合为一类的属性数据文档中的第C类属性数据文档的属性定义名称所对应的二进制形式数值;Sc表示合为一类的属性数据文档中的第C类属性数据文档的字节个数;()2表示将括号内的数值转换为二进制形式;L[(Sc)2]表示将Sc转换为二进制形式后二进制数的位数;{}10表示将括号内的数值转换为10进制。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于慧之安信息技术股份有限公司,未经慧之安信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111388257.5/1.html,转载请声明来源钻瓜专利网。