一种半虚拟化打印的方法和装置的制造方法

文档序号:8412286阅读:328来源:国知局
一种半虚拟化打印的方法和装置的制造方法
【技术领域】
[0001]本发明涉及计算机领域,特别是涉及一种半虚拟化打印的方法和装置。
【背景技术】
[0002]虚拟打印技术是在操作系统中使用软件模拟真实的打印机,虚拟打印是在编辑软件中,选择一个虚拟的打印机,并利用虚拟打印机的驱动将编辑软件中的文档以版式文件形式输出,比如,在编辑word中,利用“Adobe PDF”虚拟打印机将doc文档转换成pdf文档。具体的,用户选择虚拟打印机发起打印任务,经由打印池处理,将打印的内容发给虚拟打印机软件。在此之后,虚拟打印机根据自定义的功能,将其生成Pdf文件。
[0003]文档格式之间的转换一般采用虚拟打印机打印来完成,但是在打印过程中,由于源数据即编辑软件中的原始文档,如word文档经过虚拟打印机的驱动标准接口的处理后,可能会发生信息损失。
[0004]目前,基于虚拟打印技术研发了安全打印技术方案,用以管理、控制用户的打印操作,并对印刷品进行全生命周期追溯。以下是系统的原理说明:
[0005]在现有的虚拟打印机技术方案中,首先需要在用户的PC机上安装虚拟打印机。发起打印任务时的流程可参阅图1所示。
[0006]具体的,用户使用虚拟打印机发起打印任务;操作系统的打印假脱机组件处理打印任务,并植染成增强元文件(Enhanced MetaFile,EMF)格式的数据(视情况而定,也可能生成其他格式),发给虚拟打印机;虚拟打印机获取到数据后,发给打印管控系统;经过审批确认;在输出阶段,对收到的数据进行业务相关处理;发起新的打印任务;使用真实打印机发起打印任务。
[0007]然而,虚拟打印机存在无法发挥打印机高级特性及自定义特性的问题。
[0008]由于部分虚拟打印机设备的驱动与硬件之间,存在设备厂商的私有定义,如装订选项、品质调优选项、省墨选项、N-up等非通用功能。这部分功能的设定通常保存在由驱动生成的数据中。驱动生成的数据可能包括非公开的打印机原始记录数据、私有指令及私有结构体等。由于虚拟打印机属于通用打印机,无法获取并模拟各厂商驱动的高级特性,会造成功能丢失。
[0009]另外,部分标准设定,如纸张等,存在打印机的自定义尺寸及用户定义大小,这部分可由打印机厂商在驱动程序编辑并在自己的设备硬件中解析,因此也有出现错误的风险。

【发明内容】

[0010]本发明实施例提供一种半虚拟化打印的方法和装置,用以解决现有技术中虚拟打印机存在无法发挥打印机高级特性及自定义特性的问题。
[0011]本发明实施例提供的具体技术方案如下:
[0012]一种半虚拟化打印的方法,包括:
[0013]基于用户提交的打印任务获取初始待打印数据;
[0014]调用真实打印机驱动获取打印相关参数,并基于打印相关参数对初始待打印数据进行格式处理,获得待打印数据;
[0015]针对待打印数据执行打印操作。
[0016]这样,可以保留打印机的所有特性。
[0017]较佳的,调用真实打印机驱动获取打印相关参数之后,并对所述初始待打印数据和打印相关参数进行格式处理之前,进一步包括:
[0018]若当前部署环境为打印任务发起阶段对打印页面进行调整,则判定能够直接对所述初始待打印数据进行格式处理;
[0019]若当前部署环境为打印任务输出阶段对打印页面进行调整,则判定在接收到业务管控系统的打印操作指令时,再对所述初始待打印数据进行格式处理。
[0020]较佳的,获得待打印数据之后,执行打印操作之前,进一步包括:
[0021]若当前部署环境为打印任务发起阶段对打印页面进行调整,则判定在接收到业务管控系统的打印操作指令时,再进行后续的打印操作;
[0022]若当前部署环境为打印任务输出阶段对打印页面进行调整,则判定能够直接进行后续的打印操作。
[0023]较佳的,进行后续的打印操作之前,进一步包括:
[0024]对所述待打印数据进行业务相关信息验证,验证成功后判定能够执行打印操作。
[0025]较佳的,执行打印操作之后进一步包括:
[0026]将打印的数据保存在指定的存储空间中。
[0027]一种半虚拟化打印的装置,包括:
[0028]获取单元,用于基于用户提交的打印任务获取初始待打印数据;
[0029]处理单元,用于调用真实打印机驱动获取打印相关参数,并基于所述打印相关参数对所述初始待打印数据进行格式处理,获得待打印数据;
[0030]执行单元,用于针对所述待打印数据执行打印操作。
[0031]较佳的,调用真实打印机驱动获取打印相关参数之后,并对所述初始待打印数据和打印相关参数进行格式处理之前,所述处理单元进一步用于:
[0032]若当前部署环境为打印任务发起阶段对打印页面进行调整,则判定能够直接对所述初始待打印数据进行格式处理;
[0033]若当前部署环境为打印任务输出阶段对打印页面进行调整,则判定在接收到业务管控系统的打印操作指令时,再对所述初始待打印数据进行格式处理。
[0034]较佳的,获得待打印数据之后,执行打印操作之前,所述处理单元进一步用于:
[0035]若当前部署环境为打印任务发起阶段对打印页面进行调整,则判定在接收到业务管控系统的打印操作指令时,再进行后续的打印操作;
[0036]若当前部署环境为打印任务输出阶段对打印页面进行调整,则判定能够直接进行后续的打印操作。
[0037]较佳的,进行后续的打印操作之前,所述处理单元进一步用于:
[0038]对所述待打印数据进行业务相关信息验证,验证成功后判定能够执行打印操作。
[0039]较佳的,执行打印操作之后,执行单元进一步用于:
[0040]将打印的数据保存在指定的存储空间中。
【附图说明】
[0041]图1为现有技术下虚拟打印流程示意图;
[0042]图2为本发明实施例中半虚拟化打印的具体流程图;
[0043]图3为本发明实施例中任务发起阶段装饰的半虚拟化打印的具体流程图;
[0044]图4为本发明实施例中任务发起阶段装饰的半虚拟化打印的结构示意图;
[0045]图5为本发明实施例中任务输出阶段装饰的半虚拟化打印的具体流程图;
[0046]图6为本发明实施例中任务输出阶段装饰的半虚拟化打印的结构示意图;
[0047]图7为本发明实施例中半虚拟化打印的装置的结构示意图。
【具体实施方式】
[0048]为了解决虚拟打印机无法发挥打印机高级特性及自定义特性的问题,本发明实施例中,提出了一种半虚拟化打印的方法和装置,基于用户提交的打印任务获取待打印数据;对待打印数据进行业务相关信息验证,确定验证成功时进行打印操作,由于使用真实的打印驱动发起打印任务,并由真实的打印驱动与硬件通信并最终输出,因此可以保留打印机的所有特性。
[0049]下面结合附图对本发明优选的实施方式进行详细说明。
[0050]参阅图2所示,本发明实施例中,半虚拟化打印的具体流程如下:
[0051]步骤200:基于用户提交的打印任务获取初始待打印数据。
[0052]其中,用户提交打印任务如记事本、MS Office、各类图像等;初始待打印数据一般为EMF格式数据。
[0053]步骤210:调用真实打印机驱动获取打印相关参数,并基于打印相关参数对初始待打印数据进行格式处理,获得待打印数据。
[0054]这里,打印相关参数可以是打印的份数、打印机名称,文档名,打印数据格式,打印处理器,Windows登陆的用户名,任务发起时间、省墨选项、品质调优选项以及装订选项等。
[0055]本发明实施例中,在执行步骤210时,采用假脱机组件调用真实打印机驱动获取打印相关参数之后,并对初始待打印数据和打印相关参数进行格式处理之前,
[0056]若当前部署环境为打印任务发起阶段对打印页面进行调整,则判定能够直接对初始待打印数据进行格式处理;
[0057]若当前部署环境为打印任务输出阶段对打印页面进行调整,则判定在接收到业务管控系统的打印操作指令时,再对初始待打印数据进行格式处理。
[0058]如接收收到“确定”的操作指令时,再对初始待打印数据进行格式处理。
[0059]其中,获取的待打印数据一般为RAW格式数据。
[0060]这里,对打印页面的调整是指对打印页面进行增加水印以及条码等修改。
[0061]进一步地,如果需要打印N份任务,要对打印页面进行调整,因为每份打印任务的条码、水印不同,所以需要将要打印N份的任务,拆成N个打印任务来处理。
[0062]此外,为了方便起见,当前部署环境为打印任务发起阶段对打印页面进行调整,下面简称为任务发起阶段装饰,当前部署环境为打印任务输出阶段对打印页面进行调整,下面简称为任务输出阶段装饰。
[0063]获得待打印数据之后,执行打印操作之前,若当前部署环境为打印任务发起阶段对打印页面进行调整(任务发起阶段装饰),则判定在接收到业务管控系统的打印操作指令时,再进行后续的打印操作;
[0064]若当前部署环境为打印任务输出阶段对打印页面进行调整(任务输出阶段装饰),则判定能够直接进行后续的打印操作。
[0065]可选的,对待打印数据进行业务相关信息验证,验证成功后判定能够执行打印操作。
[0066]这里,业务相关信息验证指的是打印任务是否在打印安全系统的控制下,防止用户绕过安全系统进行打印操作,验证是否通过审批系统等。
[0067]例如,可以通过语言监视器来进行业务验证,其中,语言监视器是真实打打印机驱动的一部分,所以,操作系统部分的假脱机组件调用了真实打印机厂商提供的(在这里是半虚拟化系统提供的)语言监视器来进行业务验证。
[0068]进行打印操作之后,将打印的数据保存在指定的存储空间中。这样,便用以后查找或者审计。
[0069]步骤220:针对待打印数据执行打印操作。
[0070]下面结合两个具体的应用场景对上述实施例做进行一步的说明。
[0071]参阅图3所示,任务发起阶段装饰的半虚拟化打印流程如下:
[0072]步骤300:基于用户选择应用程序发起的打印任务,获取初始待打印数据。
[0073]步骤310:调用真实打印机驱动获取打印相关参数。
[0074]其中,获取初始待打印数据以及打印相关参数都属于打印监视系统获取的数据,具体的,基于打印监视系统获取的数据包括两个方面:一方面是基于用户所选应用程序发起的打印任务,获取初始待打印数据(简称应用
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1