利用GDI挂钩技术实现浮水印打印的方法技术

技术编号:8190830 阅读:256 留言:0更新日期:2013-01-10 01:45
本发明专利技术公开了一种利用GDI挂钩技术实现浮水印打印的方法,该方法包括获取浮水印特征,安装打印过滤,捕获打印操作,分析打印操作,生成浮水印位图,绘制浮水印,该方法适用于不同类型的打印机设备,通过采用GDI挂钩技术,在不替换打印机驱动程序的情况下,能够对设置为文本、图片、手写轨迹的浮水印进行准确、快速打印,同时,本方法与发起打印操作的应用程序无关,实现了浮水印打印的通用性,极大地提高了打印浮水印的效率,为打印行为授权和泄密溯源提供了高效的保护手段。

【技术实现步骤摘要】

本专利技术属于计算机安全
,涉及一种保护数据安全防止泄密的浮水印打印方法,尤其涉及一种利用GDI挂钩技术实现浮水印打印的方法
技术介绍
目前,打印设备已广泛应用于办公环境中,为人们带来方便的同时也提高了机密信息外泄的风险度。为了对包含公司机密、财务等重要信息的文档打印行为进行授权,需要一种打印签名技术,同时,该签名技术也为泄密溯源提供重要依据。当前,打印签名技术主要有两种第一种是手动模式,要求打印者或其他相关人员在打印的每一页文件上进行签名,当文件页数很多时,一一在每一页上签名非常耗费人力和时间,效率很低;第二种是利用浮水印打印技术将签名过程自动化,在打印过程中,自动为每页嵌入浮水印,不但大大提高了工作效率,同时也保持了签名内容的统一性和准确性。 在现有技术中,实现浮水印打印的方法是通过提供支持浮水印打印的打印机驱动程序,由该驱动程序将浮水印嵌入到打印页面中,完成浮水印打印过程。该方法必须先调整每台打印机的驱动程序设置,将原有的驱动程序替换为支持浮水印打印的驱动程序。在一个较大规模的网络环境中,可能存在若干台打印机,调整网络内所有打印机的驱动程序设置会消耗一定的人力和时间,产生额外成本,并且当购置新打印机或者移动并重新安置打印机时,也需要对其驱动程序进行调整。因此需要一种浮水印打印方法,在不替换打印机原有的打印机驱动程序的前提下,实现浮水印打印。
技术实现思路
本专利技术提供利用GDI (图形设备接口)挂钩技术实现浮水印打印的方法,用于解决现有技术中存在的不足之处。在不替换打印机驱动程序的前提下,实现浮水印打印。为解决上述技术问题,本专利技术采用如下技术方案 利用GDI挂钩技术实现浮水印打印的方法,包含以下步骤 a.获取浮水印特征获取浮水印特征,将该浮水印特征存储在内存中; 所述浮水印特征包括浮水印源类型、浮水印源值、透明度、角度; 所述浮水印源类型包括文本、图片、手写轨迹; b.安装打印过滤通过挂载GDI(图形设备接口)的打印文档事件通知例程,完成安装打印过滤。c.捕获打印操作利用打印过滤捕获打印操作,获取打印操作所携带的上下文信息; 所述上下文信息包括事件类型、设备上下文句柄(device context handle); 所述事件类型包括创建设备上下文、开始打印作业、开始页面、结束页面、结束打印作业、删除设备上下文、重置设备上下文;d.分析打印操作根据打印操作所携带的上下文信息中的事件类型进行判断,如果事件类型是开始页面,则继续执行步骤e ;如果事件类型不是开始页面,则结束; e.生成浮水印位图仓Il建一个兼容位图(compatiblebitmap),根据所述浮水印源类型、透明度、角度,将浮水印源值绘制到所述兼容位图中; f.绘制浮水印将所述浮水印位图绘制在打印页面上。在所述步骤f中,将所述浮水印位图绘制到打印页面上,进一步包括以下步骤 fI.获取设备上下文句柄的背景混合模式(background mix mode),将该背景混合模式保存在内存中; f2.将设备上下文句柄的背景混合模式设置为透明模式; f3.将浮水印位图绘制到打印页面上; f4.将设备上下文句柄的背景混合模式恢复为步骤fl中保存在内存中的背景混合模式。本专利技术的有益效果在于该方法适用于不同类型的打印机设备,通过采用GDI挂钩技术,在不替换打印机驱动程序的情况下,能够对设置为文本、图片、手写轨迹的浮水印进行准确、快速打印,同时,本方法与发起打印操作的应用程序无关,实现了浮水印打印的通用性,极大地提高了打印浮水印的效率,为打印行为授权和泄密溯源提供了高效的保护手段。附图说明图I是本专利技术的浮水印打印的方法的流程 图2是本专利技术的浮水印打印的方法的步骤f的流程 图3是本专利技术的实施例的结构示意图。具体实施例方式为使本专利技术的目的、技术方案和优点更加清楚明白,下面结合实时方式和附图,对本专利技术做进一步详细说明。在此,本专利技术实施例的示意性方式及其说明用于解释本专利技术实施例,但不作为对本专利技术实施例的限定。如图3所示,例如在一个大规模的网络环境中,该网络环境包括手写绘图输入设备301、计算机302、打印服务器303、公共打印设备,该公共打印设备为一台普通的打印机304,通过在计算机302上获取浮水印特征、安装打印过滤等操作,然后,实现打印机304将浮水印准确、高效地打印出来。例如,打印人员在计算机302上打印一份页数为100页、文档名称为“公司年度财务报表.xls”的EXCEL文档,为了保证公司财务报表输出安全性,需要打印人员在公司财务报表的每一页上以浮水印的方式签上打印人员的姓名“韩梅”,打印人员通过在手写绘图输入设备301上输入“韩梅”,并且生成“签名.jpg”图片,通过USB接口将“签名.jpg”保存至计算机302的D:\工作\路径下。同时,要求打印人员将“签名.jpg”的透明度设置为80%,在公司财务报表上的角度设置为+15度(水平位置)。如图I所示,本专利技术的利用GDI挂钩技术实现浮水印打印方法的步骤如下 a.获取浮水印特征101 :计算机302获取浮水印特征浮水印源类型为图片、浮水印源值为D:\工作\签名.jpg、透明度80%、角度+15度(水平位置),并将所述浮水印特征存储在内存中; b.安装打印过滤102:计算机302通过挂载图形设备接口(⑶I)的打印文档事件通知例程,完成安装打印过滤; c.捕获打印操作103:计算机302利用打印过滤捕获打印操作,获取打印操作所携带的事件类型“开始页面”、设备上下文句柄(device context handle); d.分析打印操作104:计算机302根据打印操作携带的事件类型进行判断,本实施例该事件类型是开始页面,继续执行步骤e,以生成浮水印位图;(如果事件类型不是开始页面,则结束,不能生成浮水印位图); e.生成浮水印位图105;计算机302创建一个兼容位图(compatible bitmap),将所述浮水印源类型“图片”、浮水印源值“D: \工作\签名.jpg”、透明度80%、角度+15度(水平位置)绘制到所述兼容位图中; f.绘制浮水印106:计算机302将所述兼容位图绘制在打印页面上,具体步骤以下 步骤201 :计算机302获取步骤103捕获到的设备上下文句柄的背景混合模式(background mix mode) “非透明模式”,将该背景混合模式-“非透明模式”保存在内存中; 步骤202 :计算机302将所述设备上下文句柄的背景混合模式设置为透明模式; 步骤203 :计算机302将步骤105生成的兼容位图绘制到打印页面上; 步骤204 :计算机302将设备上下文句柄的背景混合模式“透明模式”恢复为步骤201保存在内存中的“非透明模式”。通过上述方法,无需调整打印服务器303的驱动程序,计算机302依据浮水印特征创建兼容位图,并将该兼容位图绘制在打印页面上,然后,执行通常的打印操作,打印机304即可完成页数为100页的公司财务报表.xls上嵌入透明度为80%、角度为+15度(水平位置)的文字签名“韩梅”的打印过程。上述方法避免了通过人为的方式对页数较多的文档上进行大量签字的过程,节省了较多的时间,不但提高了签字的工作效率,保证了签字的本文档来自技高网...

【技术保护点】
一种利用GDI挂钩技术实现浮水印打印的方法,包含以下步骤:a.获取浮水印特征:获取浮水印特征,将该浮水印特征存储在内存中;所述浮水印特征包括:浮水印源类型、浮水印源值、透明度、角度;所述浮水印源类型包括:文本、图片、手写轨迹;b.安装打印过滤:通过挂载GDI的打印文档事件通知例程,完成安装打印过滤;c.捕获打印操作:利用打印过滤捕获打印操作,获取打印操作所携带的上下文信息;所述上下文信息包括:事件类型、设备上下文句柄;所述事件类型包括:创建设备上下文、开始打印作业、开始页面、结束页面、结束打印作业、删除设备上下文、重置设备上下文;d.分析打印操作:根据打印操作所携带的上下文信息中的事件类型进行判断,如果事件类型是开始页面,则继续执行步骤e;如果事件类型不是开始页面,则结束;e.生成浮水印位图:创建一个兼容位图,根据所述浮水印源类型、透明度、角度,将浮水印源值绘制到所述兼容位图中;f.绘制浮水印:将所述浮水印位图绘制在打印页面上。

【技术特征摘要】

【专利技术属性】
技术研发人员:牟流金魁宋非
申请(专利权)人:沈阳通用软件有限公司
类型:发明
国别省市:

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

1