CN112214740A - Pdf处理方法、装置、计算机设备和存储介质 - Google Patents
Pdf处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112214740A CN112214740A CN202011030811.8A CN202011030811A CN112214740A CN 112214740 A CN112214740 A CN 112214740A CN 202011030811 A CN202011030811 A CN 202011030811A CN 112214740 A CN112214740 A CN 112214740A
- Authority
- CN
- China
- Prior art keywords
- watermark
- page
- data
- acquisition request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 20
- 238000006243 chemical reaction Methods 0.000 claims abstract description 19
- 238000000034 method Methods 0.000 claims abstract description 19
- 238000004590 computer program Methods 0.000 claims description 13
- 230000005540 biological transmission Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 5
- 230000000474 nursing effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/16—Program or content traceability, e.g. by watermarking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0021—Image watermarking
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
- G16H10/60—ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Epidemiology (AREA)
- Primary Health Care (AREA)
- Public Health (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Storage Device Security (AREA)
Abstract
本申请涉及一种PDF处理方法、装置、计算机设备和存储介质。所述方法包括:页面响应于PDF数据获取请求,获取对应的PDF数据源;基于PDF数据源转换生成PDF输入流;获取PDF数据获取请求对应的会话控制对象,根据所述会话控制对象确定PDF数据获取请求对应的用户信息,将用户信息作为水印内容;获取与页面兼容的水印属性信息,根据水印内容和水印属性信息生成水印数据;基于PDF输入流和所述水印数据生成PDF输出流;通过PDF输出流在页面显示对应的PDF文档,水印内容根据所述水印属性信息显示在PDF文档中。采用本方法能够在信息泄露后通过PDF文档中的水印进行溯源,提高PDF文档在网络传输中的安全性。
Description
技术领域
本申请涉及信息安全技术领域,特别是涉及一种PDF处理方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,越来越多的电子文档在网络上传输。作为与应用程序、操作系统、硬件环境无关的PDF文件,其不仅能忠实还原每一个字符、颜色以及图像,而且还能防止文字的拷贝,因此,在进行电子文档的网络传输时,通常使用PDF文档的形式。
目前,网络上传输的PDF文档是提前生成的,无法在PDF文档界面实时显示操作人的信息。当用户在线查看PDF文档时,可以通过截屏、拍照或者直接下载的方式来获取得到PDF文档的信息。当PDF文档涉及私密信息时,可能造成信息泄露,且在信息泄露后无法进行溯源。例如,医生通过HIS(Hospital Information System,医院信息系统)查看患者病历PDF,可能存在泄露患者隐私的风险,导致安全性较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高安全性的PDF处理方法、装置、计算机设备和存储介质。
一种PDF处理方法,所述方法包括:
页面响应于PDF数据获取请求,获取对应的PDF数据源;
基于所述PDF数据源转换生成PDF输入流;
获取所述PDF数据获取请求对应的会话控制对象,根据所述会话控制对象确定所述PDF数据获取请求对应的用户信息,将所述用户信息作为水印内容;
获取与所述页面兼容的水印属性信息,根据所述水印内容和所述水印属性信息生成水印数据;
基于所述PDF输入流和所述水印数据生成PDF输出流;
通过所述PDF输出流在所述页面显示对应的PDF文档,所述水印内容根据所述水印属性信息显示在所述PDF文档中。
一种PDF处理装置,所述装置包括:
PDF数据源获取模块,用于页面响应于PDF数据获取请求,获取对应的PDF数据源;
转换模块,用于基于所述PDF数据源转换生成PDF输入流;
水印内容获取模块,用于获取所述PDF数据获取请求对应的会话控制对象,根据所述会话控制对象确定所述PDF数据获取请求对应的用户信息,将所述用户信息作为水印内容;
水印数据生成模块,用于获取与所述页面兼容的水印属性信息,根据所述水印内容和所述水印属性信息生成水印数据;
PDF输出模块,用于基于所述PDF输入流和所述水印数据生成PDF输出流,通过所述PDF输出流在所述页面显示对应的PDF文档,所述水印内容根据所述水印属性信息显示在所述PDF文档中。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
页面响应于PDF数据获取请求,获取对应的PDF数据源;
基于所述PDF数据源转换生成PDF输入流;
获取所述PDF数据获取请求对应的会话控制对象,根据所述会话控制对象确定所述PDF数据获取请求对应的用户信息,将所述用户信息作为水印内容;
获取与所述页面兼容的水印属性信息,根据所述水印内容和所述水印属性信息生成水印数据;
基于所述PDF输入流和所述水印数据生成PDF输出流;
通过所述PDF输出流在所述页面显示对应的PDF文档,所述水印内容根据所述水印属性信息显示在所述PDF文档中。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
页面响应于PDF数据获取请求,获取对应的PDF数据源;
基于所述PDF数据源转换生成PDF输入流;
获取所述PDF数据获取请求对应的会话控制对象,根据所述会话控制对象确定所述PDF数据获取请求对应的用户信息,将所述用户信息作为水印内容;
获取与所述页面兼容的水印属性信息,根据所述水印内容和所述水印属性信息生成水印数据;
基于所述PDF输入流和所述水印数据生成PDF输出流;
通过所述PDF输出流在所述页面显示对应的PDF文档,所述水印内容根据所述水印属性信息显示在所述PDF文档中。
上述PDF处理方法、装置、计算机设备和存储介质,通过页面响应于PDF数据获取请求,获取对应的PDF数据源,基于PDF数据源转换生成PDF输入流;获取PDF数据获取请求对应的会话控制对象,根据会话控制对象确定PDF数据获取请求对应的用户信息,将用户信息作为水印内容;获取与页面兼容的水印属性信息,根据水印内容和所述水印属性信息生成水印数据;基于PDF输入流和水印数据生成PDF输出流;通过PDF输出流在所述页面显示对应的PDF文档,水印内容根据水印属性信息显示在PDF文档中,实时动态生成PDF水印,数据准确,在PDF文档中自动携带浏览用户的用户信息,能够有效地防止信息泄露,并且,在信息泄露后可以通过PDF文档中的水印进行溯源,能够提高PDF文档在网络传输中的安全性。
附图说明
图1为一个实施例中PDF处理方法的应用环境图;
图2为一个实施例中PDF处理方法的流程示意图;
图3为一个具体的实施例中PDF处理方法的流程示意图;
图4为一个实施例中PDF处理装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中PDF处理方法的应用环境图。如图1所示,该应用环境包括终端110和服务器120,终端110进入PDF文档显示界面生成PDF数据获取请求,终端110的当前页面响应于PDF数据获取请求,从服务器120获取对应的PDF数据源,基于PDF数据源转换生成PDF输入流,获取PDF数据获取请求对应的会话控制对象,根据会话控制对象确定PDF数据获取请求对应的用户信息,将用户信息作为水印内容;获取与页面兼容的水印属性信息,根据水印内容和水印属性信息生成水印数据,基于PDF输入流和水印数据生成PDF输出流,通过PDF输出流在页面显示对应的PDF文档,水印内容根据水印属性信息显示在PDF文档中。其中终端110可以为包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、车载电脑、穿戴式设备等终端设备。其中服务器120可以为一个服务器或服务器集群。
图2为一个实施例中PDF处理方法的流程图。图2所示的PDF处理方法可应用于上述终端110中,包括:
步骤202,页面响应于PDF数据获取请求,获取对应的PDF数据源。
其中,页面是运行在终端浏览器或APP应用内展现给用户浏览的网页,可以用于实现终端和服务器间的数据交互。终端通过页面接收PDF数据获取请求,可以通过页面上的虚拟按键触发、语音触发,手势触发等。如页面为文章界面、医院档案界面等,通过页面进行选择其中一个文章或档案触发对应的PDF数据获取请求,PDF数据获取请求中可携带目标PDF标识,用于唯一标识一个PDF文档,目标PDF标识可以是PDF的名称或者序列码等。
具体地,终端通过页面接收PDF数据获取请求,用于在线浏览PDF文档。向服务器发送PDF数据获取请求,服务器接收到该PDF读取请求,从数据库中查找得到相应的PDF数据,并返回至终端。PDF数据源是原始PDF数据,PDF数据源可以是不同格式的数据源,如可以是string类型的二进制流数据。
步骤204,基于PDF数据源转换生成PDF输入流。
具体地,PDF输入流是指输入的PDF数据流,用于生成PDF输出流。
具体地,原始PDF数据的数据类型需要转换为方便PDF数据处理的PDF输入流类型,PDF输入流的类型可根据PDF数据处理的具体需要确定,在一个实施例中,把PDF流数据从String类型的二进制流数据转成byte字节流,再转成PDF数据处理需要的BufferedInputStream数据结构,生成PDF输出流。
步骤206,获取PDF数据获取请求对应的会话控制对象,根据会话控制对象确定PDF数据获取请求对应的用户信息,将用户信息作为水印内容。
具体地,会话控制对象是Session对象,Session对象存储用户会话所需的属性和配置信息。会话控制对象可以通过会话控制对象标识进行标识,即Session ID,由于一个用户对应一个Session对象,因此Session ID用于指向唯一的Session对象,获取得到相应的PDF数据获取请求对应的用户信息。用户信息是用于标识用户身份的信息,用户信息可以是姓名、工号、身份证号或手机号等;也可以是多种用户信息的组合,例如,姓名+工号。将用户信息作为水印内容,能够在PDF文档内容泄露后通过用户信息进行溯源。在一个实施例中,水印内容还包括浏览时间,用于后续对浏览记录进行跟踪。
步骤208,获取与页面兼容的水印属性信息,根据水印内容和水印属性信息生成水印数据。
具体地,水印属性信息可以包括水印字体和水印透明度。水印字体可以包括字体类型和字体大小。字体类型包括但不限于是黑体、宋体或楷体等。与页面兼容是指水印属性信息对应的水印能在页面正常显示。在一个实施例中,先获取软件的客户端的默认字体,并在其中选择合适的字体作为水印字体,例如IOS和Android系统中默认的字体不同,为适应不同系统均能正常显示水印,选取了两个系统共同的默认字体,并且是页面兼容的默认字体。在一个实施例中,根据终端信息确定该终端支持的字体,终端信息可以是终端标识或终端型号等。终端标识是用于唯一标识终端,可以是device ID、IMEI、MAC地址等。终端型号用于表示终端的类型。通过终端型号或终端标识,能够查找得到该终端支持的字体,并从该终端支持的字体中获取与页面兼容的字体。通过水印属性信息确定水印内容的具体显示形式,从而得到水印数据。
步骤210,基于PDF输入流和水印数据生成PDF输出流,通过PDF输出流在页面显示对应的PDF文档,水印内容根据水印属性信息显示在PDF文档中。
具体地,PDF输出流是指输出的PDF数据流,输出的PDF数据流由PDF输入流和水印数据组合得到,将PDF输出流在页面显示,得到对应的PDF文档,其中显示的PDF文档中根据水印数据将水印内容根据水印属性信息进行显示。从而得到包含当前浏览用户的用户身份信息的PDF文档,无论进行拍照还是截取页面,都在PDF文档中包含当前浏览用户的用户身份信息,保证了PDF文档浏览记录的可追塑。且水印数据是根据PDF数据获取请求实时动态生成的,保证了水印内容的有效性与实时性。
本实施例中的PDF处理方法,通过页面响应于PDF数据获取请求,获取对应的PDF数据源,基于PDF数据源转换生成PDF输入流;获取PDF数据获取请求对应的会话控制对象,根据会话控制对象确定PDF数据获取请求对应的用户信息,将用户信息作为水印内容;获取与页面兼容的水印属性信息,根据水印内容和所述水印属性信息生成水印数据;基于PDF输入流和水印数据生成PDF输出流;通过PDF输出流在所述页面显示对应的PDF文档,水印内容根据水印属性信息显示在PDF文档中,实时动态生成PDF水印,数据准确,在PDF文档中自动携带浏览用户的用户信息,能够有效地防止信息泄露,并且,在信息泄露后可以通过PDF文档中的水印进行溯源,能够提高PDF文档在网络传输中的安全性。
在一个实施例中,步骤202之前,还包括:页面响应于登录请求,创建会话控制对象,登录请求携带用户信息,将用户信息存储至会话控制对象中。
具体地,登录请求用于登录当前页面,在登录时,创建会话控制对象,将用户信息存储至会话控制对象中,从而在退出登录前,对页面的所有操作都对应于用户信息匹配的用户。
本实施例中,根据登录请求创建会话控制对象,在会话控制对象中存储用户信息,便于后续根据PDF数据获取请求从对应的会话控制对象中提取用户信息作为水印内容。
在一个实施例中,步骤204包括:对PDF数据源进行解码,得到PDF字节数组,创建PDF输入流对象,通过PDF输入流对象读取PDF字节数组,生成PDF输入流。
具体地,得到PDF字节数组中存储了PDF数据源解码后得到的PDF字节,PDF输入流对象可以是自定义的一种结构体,通过PDF输入流对象读取PDF字节数组,形成预设结构的数据,得到PDF输入流,整个过程可以通过工具完成。
本实施例中,通过创建PDF输入流对象,通过PDF输入流对象读取PDF字节数组,生成PDF输入流,PDF输入流用于与水印数据一起生成PDF输出流,通过自定义的结构生成PDF输入流便于提高后续处理效率。
在一个实施例中,水印属性信息包括水印字体和水印透明度,步骤210包括:将水印字体和水印透明度作为水印内容的配置参数,对水印内容进行配置,并嵌入PDF输入流生成PDF输出流。
具体地,水印字体用于控制水印显示的字体,水印透明度用于控制水印显示的透明度,对水印字体和水印透明度作为水印内容的配置参数进行配置,从而可生成自定义字体和透明度的水印,可根据文档背景色和文档内容自动调节水印字体和水印透明度,生成个性化的水印,嵌入PDF输入流生成PDF输出流。
本实施例中,通过水印字体和水印透明度对水印内容进行配置,可生成不同字体和透明度的水印,形成不同的PDF输出流,便于在不同的应用场景显示个性化的水印。
在一个实施例中,水印属性信息包括水印字体;步骤210包括:对水印字体和水印内容进行计算,得到水印尺寸,获取页面的尺寸,将水印尺寸和页面的尺寸作为水印平铺密度控制参数,得到水印平铺密度;将水印内容以水印平铺密度嵌入PDF输入流中,得到PDF输出流。
具体地,获取PDF的宽和高,确定水印大小,根据水印字体和水印内容进行计算,得到水印尺寸,将页面的尺寸和水印尺寸作为水印平铺密度控制参数,水印平铺密度控制参数用于控制水印平铺在PDF的密度,从而得到水印平铺密度,水印平铺密度越大,相同页面尺寸的水印越多。将水印内容以水印平铺密度嵌入PDF输入流中,得到PDF输出流,从而后续根据PDF输出流显示的PDF文档中包括以水印平铺密度显示的多个水印内容。
本实施例中,通过水印尺寸和页面的尺寸作为水印平铺密度控制参数,得到水印平铺密度,可以控制得到不同的水印平铺密度,实现个性化的水印平铺。
在一个实施例中,步骤210之后,还包括:页面响应于PDF下载请求,将PDF文档下载至本地保存,PDF文档中包括水印内容。
具体地,可通过页面上的下载按键触发PDF下载请求,下载至本地保存的PDF文档中携带水印内容,从而即使后续PDF文档被传播,也能根据水印内容追溯传播源头。
本实施例中,下载的PDF文档中包括水印内容,从而保证PDF文档在后续传播转发的追溯性,进一步保证PDF文档的安全。
在一个实施例中,PDF数据获取请求为病历获取请求;PDF数据获取请求携带病历标识,步骤202包括:响应于病历获取请求,调用医院信息系统接口;通过医院信息系统接口,从医院信息系统中获取与病历标识对应的病历PDF数据源。
具体地,病历获取请求用于获取病历记录信息,病历标识用于唯一标识一个病历记录,通过调用医院信息系统接口向医院信息系统发送病历获取请求,从而医院信息系统从数据库中查找得到与病历标识对应的病历PDF数据源。
本实施例中,通过病历获取请求从医院信息系统中获取与病历标识对应的病历PDF数据源,从而可通过后续的水印内容识别病历信息的浏览人身份,实时动态生成PDF水印,数据准确,且在保存时也在图片文件上显示保存人身份信息的水印,双重保护患者的就诊数据与隐私,保证责任落实到人。
在一个具体的实施例中,提供一种PDF处理方法,如图3所示,具体过程如下:
1、登录云医生轻应用,进入医生文书或护理文书功能界面。
2、医生文书或护理文书功能界面中的页面响应于PDF数据获取请求,PDF数据获取请求中携带病历标识,触发调用医院信息系统接口。
3、医院信息系统获取与所述病历标识对应的病历PDF数据源返回至云医生轻应用。
4、接收医院信息系统返回的base64字符流,通过工具类处理病历PDF数据源,转换为PDF输入流,即把PDF流数据从String转成byte,再转成BufferedInputStream这种自定义的结构,作为入参之一。
5、设置水印字体使得其与H5页面兼容,获取会话控制对象,从中获取用户信息,包括登录工号和姓名作为水印内容。
6、将水印内容与PDF输入流组合生成添加水印的PDF输出流,组合时需要三个参数,InputStream,即PDF输入流、OutputStream即PDF输出流、即水印内容,在实际事实生成水印的过程中,PDF输入流作为第一入参,PDF输出流可直接通过response获取作为第二入参,最后再从session里拿到登录工号和姓名,作为第三入参,实时通过JLabel在PDF中加入水印。获取PDF的宽和高,控制水印平铺密度。
7、通过PDF输出流把带水印的PDF输出,然后关闭所有流。在医生文书或护理文书功能界面显示PDF界面内容,实时显示登录工号和姓名的水印。
本实施例中,通过医院信息系统接口获取与病历标识对应的病历PDF数据源返回至云医生轻应用,并实时在PDF中加入包含登录工号和姓名的水印,保证患者的PDF数据的浏览记录具有可追溯性,保证了患者的就诊数据的隐私安全性。
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
图4为一个实施例的PDF处理装置500的结构框图。如图4所示,一种PDF处理装置500,包括:PDF数据源获取模块502、转换模块504、水印内容获取模块506,水印数据生成模块508,PDF输出模块510,其中:
PDF数据源获取模块502,用于页面响应于PDF数据获取请求,获取对应的PDF数据源。
转换模块504,用于基于PDF数据源转换生成PDF输入流。
水印内容获取模块506,用于获取PDF数据获取请求对应的会话控制对象,根据所述会话控制对象确定PDF数据获取请求对应的用户信息,将用户信息作为水印内容。
水印数据生成模块508,用于获取与所述页面兼容的水印属性信息,根据所述水印内容和所述水印属性信息生成水印数据。
PDF输出模块510,用于基于PDF输入流和水印数据生成PDF输出流,通过PDF输出流在页面显示对应的PDF文档,水印内容根据水印属性信息显示在PDF文档中。
本实施中的PDF处理装置500,通过页面响应于PDF数据获取请求,获取对应的PDF数据源,基于PDF数据源转换生成PDF输入流;获取PDF数据获取请求对应的会话控制对象,根据会话控制对象确定PDF数据获取请求对应的用户信息,将用户信息作为水印内容;获取与页面兼容的水印属性信息,根据水印内容和所述水印属性信息生成水印数据;基于PDF输入流和水印数据生成PDF输出流;通过PDF输出流在所述页面显示对应的PDF文档,水印内容根据水印属性信息显示在PDF文档中,实时动态生成PDF水印,数据准确,在PDF文档中自动携带浏览用户的用户信息,能够有效地防止信息泄露,并且,在信息泄露后可以通过PDF文档中的水印进行溯源,能够提高PDF文档在网络传输中的安全性。
在一个实施例中,装置还包括:
登录模块512,用于页面响应于登录请求,创建会话控制对象,登录请求携带用户信息,将用户信息存储至会话控制对象中。
本实施例中,根据登录请求创建会话控制对象,在会话控制对象中存储用户信息,便于后续根据PDF数据获取请求从对应的会话控制对象中提取用户信息作为水印内容。
在一个实施例中,转换模块504还用于对PDF数据源进行解码,得到PDF字节数组,创建PDF输入流对象,通过PDF输入流对象读取PDF字节数组,生成PDF输入流。
本实施例中,通过创建PDF输入流对象,通过PDF输入流对象读取PDF字节数组,生成PDF输入流,PDF输入流用于与水印数据一起生成PDF输出流,通过自定义的结构生成PDF输入流便于提高后续处理效率。
在一个实施例中,水印属性信息包括水印字体和水印透明度,PDF输出模块510还用于将水印字体和水印透明度作为水印内容的配置参数,对水印内容进行配置,并嵌入PDF输入流生成PDF输出流。
本实施例中,通过水印字体和水印透明度对水印内容进行配置,可生成不同字体和透明度的水印,形成不同的PDF输出流,便于在不同的应用场景显示个性化的水印。
在一个实施例中,水印属性信息包括水印字体,PDF输出模块510还用于对水印字体和所述水印内容进行计算,得到水印尺寸;获取所述页面的尺寸,将水印尺寸和所述页面的尺寸作为水印平铺密度控制参数,得到水印平铺密度;将水印内容以水印平铺密度嵌入PDF输入流中,得到PDF输出流。
本实施例中,通过水印尺寸和页面的尺寸作为水印平铺密度控制参数,得到水印平铺密度,可以控制得到不同的水印平铺密度,实现个性化的水印平铺。
在一个实施例中,装置还包括:
下载模块514,用于页面响应于PDF下载请求,将PDF文档下载至本地保存,PDF文档中包括水印内容。
本实施例中,下载的PDF文档中包括水印内容,从而保证PDF文档在后续传播转发的追溯性,进一步保证PDF文档的安全。
在一个实施例中,PDF数据获取请求为病历获取请求;PDF数据获取请求携带病历标识,PDF数据源获取模块502还用于响应于病历获取请求,调用医院信息系统接口;通过医院信息系统接口,从医院信息系统中获取与病历标识对应的病历PDF数据源。
本实施例中,通过病历获取请求从医院信息系统中获取与病历标识对应的病历PDF数据源,从而可通过后续的水印内容识别病历信息的浏览人身份,实时动态生成PDF水印,数据准确,且在保存时也在图片文件上显示保存人身份信息的水印,双重保护患者的就诊数据与隐私,保证责任落实到人。
关于PDF处理装置的具体限定可以参见上文中对于PDF处理方法的限定,在此不再赘述。上述PDF处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
图5为一个实施例中电子设备的内部结构示意图。如图5所示,该电子设备包括通过系统总线连接的处理器、存储器。其中,该处理器用于提供计算和控制能力,支撑整个电子设备的运行。存储器可包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现以上各个实施例所提供的PDF处理方法。内存储器为非易失性存储介质中的操作系统计算机程序提供高速缓存的运行环境。该电子设备可以是手机、服务器等。
本申请实施例中提供的PDF处理装置中的各个模块的实现可为计算机程序的形式。该计算机程序可在终端或服务器上运行。该计算机程序构成的程序模块可存储在终端或服务器的存储器上。该计算机程序被处理器执行时,实现本申请实施例中所描述方法的步骤。
本申请实施例还提供了一种计算机可读存储介质。一个或多个包含计算机可执行指令的非易失性计算机可读存储介质,当所述计算机可执行指令被一个或多个处理器执行时,使得所述处理器执行PDF处理方法的步骤。
一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行PDF处理方法。
本申请所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM),它用作外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种PDF处理方法,其特征在于,所述方法包括:
页面响应于PDF数据获取请求,获取对应的PDF数据源;
基于所述PDF数据源转换生成PDF输入流;
获取所述PDF数据获取请求对应的会话控制对象,根据所述会话控制对象确定所述PDF数据获取请求对应的用户信息,将所述用户信息作为水印内容;
获取与所述页面兼容的水印属性信息,根据所述水印内容和所述水印属性信息生成水印数据;
基于所述PDF输入流和所述水印数据生成PDF输出流;
通过所述PDF输出流在所述页面显示对应的PDF文档,所述水印内容根据所述水印属性信息显示在所述PDF文档中。
2.根据权利要求1所述的方法,其特征在于,在所述页面响应于PDF数据获取请求之前,还包括:
所述页面响应于登录请求,创建所述会话控制对象,所述登录请求携带所述用户信息;
将所述用户信息存储至所述会话控制对象中。
3.根据权利要求1所述的方法,其特征在于,所述基于所述PDF数据源转换生成PDF输入流包括:
对所述PDF数据源进行解码,得到PDF字节数组;
创建PDF输入流对象,通过所述PDF输入流对象读取所述PDF字节数组,生成所述PDF输入流。
4.根据权利要求1所述的方法,其特征在于,所述水印属性信息包括水印字体和水印透明度;所述基于所述PDF输入流和所述水印数据生成PDF输出流包括:
将所述水印字体和水印透明度作为水印内容的配置参数,对所述水印内容进行配置,并嵌入所述PDF输入流生成所述PDF输出流。
5.根据权利要求1所述的方法,其特征在于,所述水印属性信息包括水印字体;所述基于所述PDF输入流和所述水印数据生成PDF输出流包括:
对所述水印字体和所述水印内容进行计算,得到水印尺寸;
获取所述页面的尺寸,将所述水印尺寸和所述页面的尺寸作为水印平铺密度控制参数,得到水印平铺密度;
将所述水印内容以所述水印平铺密度嵌入所述PDF输入流中,得到所述PDF输出流。
6.根据权利要求1所述的方法,其特征在于,所述通过所述PDF输出流在所述页面显示对应的PDF文档之后,还包括:
所述页面响应于PDF下载请求,将所述PDF文档下载至本地保存,所述PDF文档中包括所述水印内容。
7.根据权利要求1所述的方法,其特征在于,所述PDF数据获取请求为病历获取请求;所述PDF数据获取请求携带病历标识,所述页面响应于PDF数据获取请求,获取对应的PDF数据源包括:
响应于所述病历获取请求,调用医院信息系统接口;
通过所述医院信息系统接口,从医院信息系统中获取与所述病历标识对应的病历PDF数据源。
8.一种PDF处理装置,其特征在于,所述装置包括:
PDF数据源获取模块,用于页面响应于PDF数据获取请求,获取对应的PDF数据源;
转换模块,用于基于所述PDF数据源转换生成PDF输入流;
水印内容获取模块,用于获取所述PDF数据获取请求对应的会话控制对象,根据所述会话控制对象确定所述PDF数据获取请求对应的用户信息,将所述用户信息作为水印内容;
水印数据生成模块,用于获取与所述页面兼容的水印属性信息,根据所述水印内容和所述水印属性信息生成水印数据;
PDF输出模块,用于基于所述PDF输入流和所述水印数据生成PDF输出流,通过所述PDF输出流在所述页面显示对应的PDF文档,所述水印内容根据所述水印属性信息显示在所述PDF文档中。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011030811.8A CN112214740A (zh) | 2020-09-27 | 2020-09-27 | Pdf处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011030811.8A CN112214740A (zh) | 2020-09-27 | 2020-09-27 | Pdf处理方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112214740A true CN112214740A (zh) | 2021-01-12 |
Family
ID=74051899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011030811.8A Pending CN112214740A (zh) | 2020-09-27 | 2020-09-27 | Pdf处理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112214740A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113515922A (zh) * | 2021-09-09 | 2021-10-19 | 杭州天谷信息科技有限公司 | 一种文档处理方法、系统、装置以及交互装置 |
CN114417226A (zh) * | 2021-11-10 | 2022-04-29 | 北京字节跳动网络技术有限公司 | 页面生成方法、显示方法、装置、电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108959957A (zh) * | 2018-06-11 | 2018-12-07 | 安徽引航科技有限公司 | 一种基于简历隐私保护的简历分享方法 |
CN109558705A (zh) * | 2018-12-10 | 2019-04-02 | 万兴科技股份有限公司 | 基于pdf的水印平铺方法、装置、计算机设备及存储介质 |
CN110609809A (zh) * | 2019-09-23 | 2019-12-24 | 中国银行股份有限公司 | 一种数字化文件获取方法及装置 |
-
2020
- 2020-09-27 CN CN202011030811.8A patent/CN112214740A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108959957A (zh) * | 2018-06-11 | 2018-12-07 | 安徽引航科技有限公司 | 一种基于简历隐私保护的简历分享方法 |
CN109558705A (zh) * | 2018-12-10 | 2019-04-02 | 万兴科技股份有限公司 | 基于pdf的水印平铺方法、装置、计算机设备及存储介质 |
CN110609809A (zh) * | 2019-09-23 | 2019-12-24 | 中国银行股份有限公司 | 一种数字化文件获取方法及装置 |
Non-Patent Citations (1)
Title |
---|
传说中的汽水枪: "阿里云OSS下载pdf文件,并在pdf文件上添加水印", pages 1 - 4, Retrieved from the Internet <URL:www.cnblogs.com/xzjxylophone/p/7724871.html> * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113515922A (zh) * | 2021-09-09 | 2021-10-19 | 杭州天谷信息科技有限公司 | 一种文档处理方法、系统、装置以及交互装置 |
CN114417226A (zh) * | 2021-11-10 | 2022-04-29 | 北京字节跳动网络技术有限公司 | 页面生成方法、显示方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW201820168A (zh) | 使用者資訊獲取系統、方法及裝置 | |
US10839145B2 (en) | Form filling method and related terminal | |
CN110730208A (zh) | 一种本地设备调用方法、装置、存储介质及设备 | |
CN102473171A (zh) | 将有关本地机器的信息传达给浏览器应用 | |
CN112214740A (zh) | Pdf处理方法、装置、计算机设备和存储介质 | |
US20180174267A1 (en) | Systems and methods for multimedia processing | |
CN111679826B (zh) | 实时预览网页编辑内容的方法、装置、设备及存储介质 | |
WO2016065824A1 (zh) | 终端标记方法和装置 | |
CN104978537B (zh) | 一种文档访问权限的配置方法及装置 | |
WO2019228148A1 (zh) | 图像处理方法及装置、存储介质 | |
CN112818270B (zh) | 数据跨域传递方法、装置及计算机设备 | |
CN111488559B (zh) | 网页水印生成方法、装置、计算机设备和存储介质 | |
CN105786476B (zh) | 移动客户端与服务器之间的数据处理方法及系统 | |
CN114547564B (zh) | 一种文档处理方法、装置及设备 | |
CN104268611B (zh) | 网页同步方法及装置 | |
CN114117498A (zh) | 脱敏数据的实现方法、装置、系统、设备及存储介质 | |
WO2018214776A1 (zh) | 表情处理方法、计算机设备及计算机存储介质 | |
US9922388B2 (en) | Systems and methods for multimedia processing | |
CN109784067B (zh) | 图片管理方法、装置、电子设备及存储介质 | |
CN110889054A (zh) | 一种前后端分离Web系统的在线预览的方法及装置 | |
CN110851801A (zh) | 一种基于统一资源定位符的资源数据页面标识方法和装置 | |
JP5243452B2 (ja) | ブラウザプログラム及び端末装置 | |
CN111338531B (zh) | 展示终端页面的方法、装置、计算机设备和存储介质 | |
CN102360380A (zh) | 提供网页的方法、系统、装置及终端 | |
CN111428282A (zh) | 页面处理方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |