OFD文件合并展现迅捷阅读的方法技术

技术编号:25890865 阅读:103 留言:0更新日期:2020-10-09 23:32
本发明专利技术公开了一种OFD文件合并展现迅捷阅读的方法,获取电子表单内容、解析表单结构后获取电子表单结构体,按照固定的JSON格式进行表单元素重组,并保存到工作流引擎系统中;将多种格式文件转换成PDF版式文件;将超过系统设定大小的版式文件进行切割;将超过系统设定的阈值的那一份版式文件进行压缩,然后服务器解压OFD文件获取OFD文件夹;读取OFD文件夹下的文件、工作流电子表单与多个不同格式的文件转化的版式文件的目录后进行目录的重组;客户端将对应的文件数据进行格式解析加载后将页面进行渲染并完成展现。本发明专利技术能够阅读OFD文件、工作流电子表单与多种格式文件,文件的加载响应速度大幅提高。

【技术实现步骤摘要】
OFD文件合并展现迅捷阅读的方法
本专利技术涉及一种合并展现迅捷阅读的方法,特别是一种OFD文件合并展现迅捷阅读的方法,属于计算机软件领域。
技术介绍
2016年10月14日世界标准日,国家标准化管理委员会正式批准发布了基于自主技术的国家标准GB/T33190-2016《电子文件存储与交换格式版式文档》(简称OFD)。OFD,OpenFixed-layoutDocument的简写,是我国自主可控的电子文件版式文档格式,对应的国际标准就是PDF。OFD版式文件,版面固定、不跑版、所见即所得,可以视为计算机时代的“数字纸张”;是电子文档发布、数字化信息传播和存档的理想文档格式。工作流的表单系统:实现了抽象流程的流转,而具体业务的实现需要在电子表单模块中完成,例如公文签批,审核签批意见都对应一个业务模块,具体业务在业务模块中实现并将数据保存到数据库表中,从而实现业务数据的持久化。工作流引擎负责将这些业务模块串起来,实现业务流的流转。文件流转基于工作流电子表单系统,以电子表单实现业务数据交互与存储,一般以OFD文件为正文,PDF以及其他不同格式文件作为附件存在并整体流转。由于各文件的阅读方式不一致,用户想要同时阅读上述文件需要依次点击进行阅读,操作较为繁琐;而且目前现有的文件合并展现技术在处理较大文件时,客户端需要将文件远程下载,然后进行解压加载渲染,用户在线阅读时,需要较长的等待时间,无法做到即点即读的效果,在并发量较大的情况下,下载大文件会对服务器也造成很大的资源损耗,同时也会造成客户端资源的不必要损耗。因此有必要设计一种能够实现工作流电子表单与OFD等多种格式文件的统一合并阅读技术方案,而且该技术方案还能够实现工作流电子表单与OFD等多种格式文件合并后的迅捷阅读响应阅读。
技术实现思路
本专利技术所要解决的技术问题是提供一种OFD文件合并展现迅捷阅读的方法,实现工作流电子表单与OFD等多种格式文件的统一合并以及迅捷阅读。为解决上述技术问题,本专利技术所采用的技术方案是:一种OFD文件合并展现迅捷阅读的方法,其特征在于包含以下步骤:步骤一:获取电子表单内容、解析表单结构后获取电子表单结构体,按照固定的JSON格式进行表单元素重组,并保存到工作流引擎系统中;步骤二:将多种格式文件转换成PDF版式文件;步骤三:判断步骤二中的版式文件的文件大小是否超过系统设定的文件大小,若超过,将超过系统设定大小的版式文件进行切割;步骤四:判断步骤三中的切割后的每一份版式文件的单页文件大小是否超过系统设定的阈值,若超过,将超过系统设定的阈值的那一份版式文件进行压缩,然后服务器解压OFD文件获取OFD文件夹;步骤五:读取OFD文件夹下的文件、工作流电子表单与多个不同格式的文件转化的版式文件的目录后进行目录的重组;步骤六:客户端将对应的文件数据进行格式解析加载后将页面进行渲染并完成展现。进一步地,所述步骤一具体为读取电子表单的内容;将表单中的文档主体body、文档分区div、table、表格行tr、表头th、表格单元td、单行文本输入框input、多行文本输入框textarea、单选框radio、下拉框select和多选框checkbox内容解析出来,然后按照固定的JSON格式进行表单元素重组,并保存到工作流引擎系统中。进一步地,所述步骤一中标准电子表单中的元素包含单行文本输入框input、多行文本输入框textarea、下拉框select、多选框checkbox和单选框radio,输入框对象包含单行文本输入框input、多行文本输入框textarea、下拉框select、多选框checkbox、单选框radio和表格单元td。进一步地,所述步骤二中多种格式文件包含wps、doc/docx、xls/xlsx、ppt/pptx、jpg、tif、gif、png和cad,其中,wps、doc/docx、xls/xlsx采用jcob,ppt/pptx采用PowerPoint.Application,cad采用autocad,jpg、tif、gif、png图片采用PdfWriter转换为PDF版式文件,或转化为OFD版式文件。进一步地,所述步骤三具体为步骤31:遍历步骤二中生成的版式文件,获取版式文件的大小M和文件页数page_number,系统设定文件最大临界值为N,当文件大小M>N时,则将文件切割成nums份;nums的计算过程为:余数surplus=M%N,若surplus=0,则nums=M/N;若surplus>0,则nums=M/N+1;当文件大小M≤N时,不做文件切割操作;步骤32:文件切割时,按文件页数page_number来进行切割,切割的每一份单个文件的页数为page_number/nums,并且所有份的单个文件按照在文件中的页码顺序进行排列,当余数Y=page_number%nums>0时,则切割出来的所有的单个文件中的最后面的Y份单个文件的页数page_number/nums+1。进一步地,所述步骤四具体为步骤41:步骤三中分割出来的所有份的单个文件,取其中任意一份单个文件,将所述单个文件的文件大小除以单个文件的页数,得到所述单个文件的单页文件大小;步骤42:判断单页文件大小是否超过系统设定的阈值,若超过,则将所述单个文件按照设定的比例进行压缩;步骤43:按照步骤41-42对分割出来的所有份的单个文件进行处理。进一步地,所述步骤42中系统设定的阈值为500K,设定的比例为500/A*100%,其中A为每页文件的大小。进一步地,所述步骤五具体为步骤51:客户端读取OFD文件夹下的Pages文件夹下的Page_N文件,Page_N中的N是OFD文件的页码,Page_N下的content.xml文件是OFD文件夹中对应每一页OFD文件的内容,客户端依次读取每一个OFD文件夹下的Page_N文件的页码信息和content.xml文件的内容信息,并建立相应的页面路径;步骤52:将若干个OFD文件的页面路径按照JSON的方式进行组织,拼接为JSON数组;JSON数组中个体均为一个文件,文件包含文件名NAME、文件唯一id、文件大纲,文件资源包RESOURCES和页面内容Pages;页面内容Pages包含每一页的文件内容指向路径URL、每页文件在原本所属文件中的页码Page;每页文件在多个文件中的文件页码directory、是否被签批sign、是否包含指定关键字keywords;步骤53:阅读工作流电子表单时,解析工作流电子表单保存在工作流引擎系统中的JSON数据,然后将工作流电子表单的JSON数据与OFD文件及其他文件的JSON数据组合成统一目录;步骤54:阅读多种格式文件转化的版式文件以及步OFD版式文件时,解析返回的JSON数组的文件数据,获取JSON数组的文件名称、页码属性Page、多文件页码属性directory,对页码进行重组绘本文档来自技高网
...

【技术保护点】
1.一种OFD文件合并展现迅捷阅读的方法,其特征在于包含以下步骤:/n步骤一:获取电子表单内容、解析表单结构后获取电子表单结构体,按照固定的JSON格式进行表单元素重组,并保存到工作流引擎系统中;/n步骤二:将多种格式文件转换成PDF版式文件;/n步骤三:判断步骤二中的版式文件的文件大小是否超过系统设定的文件大小,若超过,将超过系统设定大小的版式文件进行切割;/n步骤四:判断步骤三中的切割后的每一份版式文件的单页文件大小是否超过系统设定的阈值,若超过,将超过系统设定的阈值的那一份版式文件进行压缩,然后服务器解压OFD文件获取OFD文件夹;/n步骤五:读取OFD文件夹下的文件、工作流电子表单与多个不同格式的文件转化的版式文件的目录后进行目录的重组;/n步骤六:客户端将对应的文件数据进行格式解析加载后将页面进行渲染并完成展现。/n

【技术特征摘要】
1.一种OFD文件合并展现迅捷阅读的方法,其特征在于包含以下步骤:
步骤一:获取电子表单内容、解析表单结构后获取电子表单结构体,按照固定的JSON格式进行表单元素重组,并保存到工作流引擎系统中;
步骤二:将多种格式文件转换成PDF版式文件;
步骤三:判断步骤二中的版式文件的文件大小是否超过系统设定的文件大小,若超过,将超过系统设定大小的版式文件进行切割;
步骤四:判断步骤三中的切割后的每一份版式文件的单页文件大小是否超过系统设定的阈值,若超过,将超过系统设定的阈值的那一份版式文件进行压缩,然后服务器解压OFD文件获取OFD文件夹;
步骤五:读取OFD文件夹下的文件、工作流电子表单与多个不同格式的文件转化的版式文件的目录后进行目录的重组;
步骤六:客户端将对应的文件数据进行格式解析加载后将页面进行渲染并完成展现。


2.按照权利要求1所述的一种OFD文件合并展现迅捷阅读的方法,其特征在于:所述步骤一具体为
读取电子表单的内容;将表单中的文档主体body、文档分区div、table、表格行tr、表头th、表格单元td、单行文本输入框input、多行文本输入框textarea、单选框radio、下拉框select和多选框checkbox内容解析出来,然后按照固定的JSON格式进行表单元素重组,并保存到工作流引擎系统中。


3.按照权利要求2所述的一种OFD文件合并展现迅捷阅读的方法,其特征在于:所述步骤一中标准电子表单中的元素包含单行文本输入框input、多行文本输入框textarea、下拉框select、多选框checkbox和单选框radio,输入框对象包含单行文本输入框input、多行文本输入框textarea、下拉框select、多选框checkbox、单选框radio和表格单元td。


4.按照权利要求1所述的一种OFD文件合并展现迅捷阅读的方法,其特征在于:所述步骤二中多种格式文件包含wps、doc/docx、xls/xlsx、ppt/pptx、jpg、tif、gif、png和cad,其中,wps、doc/docx、xls/xlsx采用jcob,ppt/pptx采用PowerPoint.Application,cad采用autocad,jpg、tif、gif、png图片采用PdfWriter转换为PDF版式文件,或转化为OFD版式文件。


5.按照权利要求1所述的一种OFD文件合并展现迅捷阅读的方法,其特征在于:所述步骤三具体为
步骤31:遍历步骤二中生成的版式文件,获取版式文件的大小M和文件页数page_number,系统设定文件最大临界值为N,当文件大小M>N时,则将文件切割成nums份;nums的计算过程为:余数surplus=M%N,若surplus=0,则nums=M/N;若surplus>0,则nums=M/N+1;当文件大小M≤N时,不做文件切割操作;
步骤32:文件切割时,按文件页数page_number来进行切割,切割的每一份单个文件的页数为page_number/nums,并且所有份的单个文件按照在文件中的页码顺序进行排列,当余数Y=page_number%nums>0时,则切割出来的所有的单个文件中的最后面的Y份单个文件的页数page_number/nums+1。


6.按照权利要求1所述的一种OFD文件合并展现迅捷阅读的方法,其特征在于:所述步骤四具体为
步骤41:步骤三中分割出来的所有份的单个文件,取其中任意...

【专利技术属性】
技术研发人员:何冉冉蔡亚军何中顾永新张军戴建峰姚童陈明敏
申请(专利权)人:江苏中威科技软件系统有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1