[发明专利]一种数据导出为PDF的方法在审
申请号: | 201611128595.4 | 申请日: | 2016-12-09 |
公开(公告)号: | CN106776498A | 公开(公告)日: | 2017-05-31 |
发明(设计)人: | 刘文健;杨培强;侯冬刚 | 申请(专利权)人: | 山东浪潮商用系统有限公司 |
主分类号: | G06F17/22 | 分类号: | G06F17/22;G06F17/24 |
代理公司: | 济南信达专利事务所有限公司37100 | 代理人: | 孟峣 |
地址: | 250100 山东省济南市*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 导出 pdf 方法 | ||
技术领域
本发明涉及计算机技术领域,具体地说是一种实用性强、数据导出为PDF的方法。
背景技术
PDF是我们极其常用的文件格式,但对如何生成PDF,基于一些公开的PDF库,我们就可以直接生成PDF文件,而不用关注PDF文件的内部细节。PDF导出功能应用系统都是通过itext提供的开源jar包进行固定一对一的导出,对于开发人员来说不易维护,开发成本比较高。
基于此,现提供一种数据导出为PDF的方法。本方法通过PDF模板和数据对应来生成PDF数据,对于应用系统来说开发成本和易维护程度都是比较大的提高。
发明内容
本发明的技术任务是针对以上不足之处,提供一种实用性强、数据导出为PDF的方法。
一种数据导出为PDF的方法,其具体实现过程为:
一、首先建立PDF组件包目录结构,该目录结构对应PDF模板;
二、根据该目录结构,输入PDF模板编号;
三、根据PDF模板编号读取PDF模板;
四、解析读取的PDF模板,获取并填充完变量信息,将该PDF对外输出。
步骤一中根据功能分类建立程序包目录结构:PDF导出工具类包、PDF配置属性包、PDF模板包、PDF生成文件包。
输入PDF模板编号时,需要对应接口完成信息输入,该接口由java接口类定义,且完成接收导出数据和模板信息传入的功能,即接口调用方传入的数据。
所述对应接口由接口类定义,且接受List<Map<String,Object>>类型,Map<String, Object>类型。
读取PDF模板时,通过以下步骤实现:
根据接口调用方传入的PDF模板编号对PDF模板进行读取;
在接口中定义“PDF_NO”参数表示PDF模板编号;
通过读取PDF配置属性包、PDF模板包获取对应模板信息。
所述PDF配置属性包、PDF模板包通过工具类包中的工具类读取,具体为:
工具类通过读取PDF配置属性包下的文件读取到所有模板编号对应的模板信息;
工具类通过模板信息采用文件流的形式读取PDF模板包下对应的模板文件信息,并形成PdfStamper对象,进而获取AcroFields对象。
所述步骤四中,解析模板标记获得每一个标记的替换变量信息,把对应变量数据进行填充,并把PDF暂存到服务器端,最后将PDF提供对外输出。
步骤四的具体过程为:根据读取到的PDF模板进行解析,获得每个标记的数据变量名称,并根据接口调用方提供的数据进行匹配对应输出,最后将生成的PDF数据存储到服务器端,并以输出流的方式向客户端输出提供客户保存。
基于获取的AcroFields对象,步骤四的实现过程为:
通过以上步骤获得的AcroFields对象获取模板中获得每个标记的元素信息,通过循环业务传入Map,找到Map中key值对应的标记元素中name属性,把该key对应的value值赋予标记元素中的value值,再把放到AcroFields域中,最后将生成的PDF文件以模板号和时间戳组合命名存储到服务器端PDF生成文件包下,并以输出二进制流的方式向客户端输出提供客户保存。
本发明的一种数据导出为PDF的方法,具有以下优点:
该发明的一种数据导出为PDF的方法,当用户需求改变修改PDF模板时,不需要重新修改大量的程序代码,只需要将更新的模板覆盖上传就可以达到导出下载功能,方便用户对数据进行导出为PDF功能,提高了导出PDF的开发成本和导出易维护程度;简单实用、提高系统开发效率、减少系统维护成本、提高系统使用效率,实用性强,适用范围广泛,易于推广。
附图说明
附图1为本发明的实现流程图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步说明。
如附图1所示,本发明涉及一种数据导出为PDF的方法,可实现当用户需求改变修改PDF模板时,不需要重新修改大量的程序代码,只需要将更新的模板覆盖上传就可以达到导出下载功能。
本方法把生成PDF改为通过模板生成PDF文件导出;且通过java封装成工具,可实时移植使用。
其实现过程为:
一、首先建立PDF组件包目录结构,该目录结构对应PDF模板;
二、根据该目录结构,输入PDF模板编号;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东浪潮商用系统有限公司,未经山东浪潮商用系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611128595.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:信息处理方法及信息处理装置
- 下一篇:一种数字化汉字拼字实现方法和装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置