【技术实现步骤摘要】
基于国产环境的WEB系统中PDF展示方法及系统
[0001]本专利技术涉及WEB系统应用
,具体地说是基于国产环境的WEB系统中PDF展示方法及系统。
技术介绍
[0002]具有自主知识产权的全国产软硬件有了较快的发展,尤其是近年来我国涌现了众多具有自主知识产权的基础软硬件产品。龙芯、飞腾、北大众志等具有自主知识产权的高端通用芯片蓬勃发展,技术水平达到了同类产品的世界先进水平。
[0003]基于全国产环境微服务架构的软件系统已经在很多地区投入使用。在项目上,很多WEB系统都有PDF展示功能,而且客户上传的PDF文件有时候会很大达上百兆,使得前端页面加载起来十分的慢甚至浏览器卡顿加载不出来。
[0004]如何实现国产环境下WEB系统中超大PDF的展示,是需要解决的技术问题。
技术实现思路
[0005]本专利技术的技术任务是针对以上不足,提供基于国产环境的WEB系统中PDF展示方法及系统,来解决如何实现国产环境下WEB系统中超大PDF的展示的技术问题。
[0006]第一方面,本专利技术基于国产环境的WEB系统中PDF展示方法,包括如下步骤:
[0007]在WEB系统前端集成pdf.js开源插件,通过pdf.js开源插件加载展现PDF文件;
[0008]在WEB系统后端加入基于Python语言开发的PDF处理服务,所述PDF处理服务提供多个进程和多个队列,每个进程由多个线程组成,所述多个进程由Python的进程池提供,进程之间相互独立且每个进程中开启有多个线程, ...
【技术保护点】
【技术特征摘要】
1.基于国产环境的WEB系统中PDF展示方法,其特征在于,包括如下步骤:在WEB系统前端集成pdf.js开源插件,通过pdf.js开源插件加载展现PDF文件;在WEB系统后端加入基于Python语言开发的PDF处理服务,所述PDF处理服务提供多个进程和多个队列,每个进程由多个线程组成,所述多个进程由Python的进程池提供,进程之间相互独立且每个进程中开启有多个线程,所述多个进程基于Go语言的协程实现;基于所述PDF处理服务提供的多个线程以及多个队列,通过将PDF文件拆分成多个图片、并对拆分后的图片进行压缩、转换及合成的方式来生成一个新的PDF文件;将所述PDF文件存储至硬盘或数据库;通过WEB系统后台的java接口调用读取所述新的PDF文件进行展示。2.根据权利要求1所述的基于国产环境的WEB系统中PDF插件展示方法,其特征在于,所述PDF处理服务提供的多个进程包括:PDF文件拆分进程,所述PDF拆分进程用于将PDF文件拆分为多个图片;图片压缩进程,所述图片压缩进程用于对拆分得到的每个图片进行压缩;图片转换进程,所述图片转换进程用于将压缩后的图片转换为PDF文件;图片合成进程,所述图片合成进程用于将转换得到的PDF文件合并为一个压缩后的PDF文件作为新的PDF文件;对应的,所述多个队列包括:待压缩队列,所述带压缩队列用于存储拆分得到的图片;待转换队列,所述待转换队列用于存储压缩后的图片;待合成队列,所述待合成队列用于存储通过图片转换进程得到的PDF文件。3.根据权利要求2所述的基于国产环境的WEB系统中PDF插件展示方法,其特征在于,基于所述PDF处理服务提供的多个线程以及多个队列,通过将PDF文件拆分成多个图片、并对拆分后的图片进行压缩、转换、合成的方式来生成一个新的PDF文件,包括如下步骤:基于PDF文件拆分进程,根据PDF文件的页数、通过Python提供的fitz库将PDF文件拆分为多个图片,将得到的图片存储至待压缩队列;从带压缩队列中读取图片,基于图片压缩进程对图片进行图片压缩,得到压缩后的图片,并将得到的压缩后的图片存储至待转换队列;从待转换队列中读取压缩后的图片,基于图片转换进程、通过Python提供的fitz库中的convert_to_pdf()将每个压缩后的图片转换为PDF文件,并将转换得到的PDF文件存储至待合成队列;从待合成队列中读取PDF文件,并基于图片合成进程、通过insert_pdf()插入文档的方法将所述PDF文件合并为一个新的PDF文件。4.根据权利要求3所述的基于国产环境的WEB系统中PDF插件展示方法,其特征在于,所述PDF处理服务还提供添加水印进程和待加水印队列,所述添加水印进程用于为合成的新的PDF文件添加水印,所述待加水印队列用于存储合成的PDF文件;基于图片合成进程将所述PDF文件合并为一个新的PDF文件后,从待加水印队列读取新的PDF文件,并基于添加水印进程为所述新的PDF文件添加水印。5.根据权利要求1
‑
4任一项所述的基于国产环境的WEB系统中PDF插件展示方法,其特征在于,通过pdf.js开源插件加载展现PDF文件,包括如下步骤:
修改pdf.js采用分片加载的方式,优先展示当前页,同时需要修改服务端PDF文件文件展示的java接口,在java接口添加HTTP
‑
Range响应头来实现分片加载;关闭pdf.js的预读取功能,禁止把整个pdf文件提前下载以减少流量消耗。6.基于国产环境的WEB系统中PDF展示系统,其特征在于,用于通过如权利要求1
‑
5任一项所述的基于国产环境的W...
【专利技术属性】
技术研发人员:王威,焦方忠,
申请(专利权)人:浪潮软件集团有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。