掌桥专利:专业的专利平台
掌桥专利
首页

通用的打印设备控制方法、电子设备、存储介质及系统

文献发布时间:2023-06-19 10:48:02


通用的打印设备控制方法、电子设备、存储介质及系统

技术领域

本发明涉及制证领域,更具体地,涉及一种通用的打印设备控制方法、电子设备、存储介质及系统。

背景技术

目前市面上有多种类型的打印设备,例如喷墨打印设备、热敏打印设备、热升华打印设备、热转印打印设备和激光刻蚀打印设备等,打印设备的工作原理和应用场景不尽相同。对于证件的个人化制作,需要利用打印设备进行个人信息的打印,传统的开发方式是基于特定的打印设备进行控制程序的定制化开发,在使用或者开发过程中有时会遇到打印设备停产或者打印设备功能问题需要更换打印设备,或者由于打印效率较低需要增加打印设备数量等情况,对于传统开发方式需要大幅度修改控制程序,给系统开发和维护带来诸多不便。

发明内容

本发明的目的是提出一种通用的打印设备控制方法、电子设备、存储介质及系统,实现打印设备和驱动程序的灵活配置,提高开发效率,降低维护成本。

为实现上述目的,本发明提出了一种通用的打印设备控制方法,包括:

接收打印指令,加载打印驱动库和XML打印模板,其中,所述打印驱动库根据预设规范开发并对外提供通用打印接口,所述打印驱动库封装有与打印设备对应的打印驱动程序集以及打印参数信息,所述XML打印模板中存有所述驱动程序库的打印驱动程序集名称、命名空间、类名以及打印参数信息;

遍历所述XML打印模板中的节点,获取所述打印驱动程序集名称、所述命名空间、所述类名以及所述打印参数信息;

基于反射机制,动态加载所述驱动程序库中的所述打印驱动程序集,采用工厂模式创建类的实例对象,将所述XML打印模板中的所述打印参数信息赋值给所述类中的相应属性,并将所述实例对象添加到设备列表中;

调用所述通用打印控制接口控制所述打印设备进行打印操作。

可选地,所述通用打印控制接口的功能包括:初始化打印设备、启动打印设备、停止打印设备、下载打印任务以及打印设备进卡并打印。

可选地,所述通用打印控制接口对所述打印设备的控制方式包括:Windows标准打印控制方式和打印设备直接控制方式;

其中,不同厂商的打印设备的控制方式均按照所述通用打印控制接口进行程序开发。

可选地,不同的打印设备均按照所述预设规范开发相应的打印设备驱动库,并按照预设规范设置所述打印驱动程序集名称、所述命名空间和所述类名。

可选地,所述打印设备包括至少一台打印机。

可选地,在调用所述通用打印控制接口控制所述打印设备进行打印操作之前,还包括:

获取所述打印设备需要绘制的正面图片事件以及反面图片事件,所述正面图片事件和所述反面图片事件基于所述XML打印模板中的所述打印参数信息生成待打印的正面图片或反面图片,以供所述打印设备下载打印任务时使用。

第二方面,本发明提出一种电子设备,所述电子设备包括:

至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面所述的通用的打印设备控制方法。

第三方面,本发明提出一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行第一方面所述的通用的打印设备控制方法。

第四方面,本发明提出一种通用的打印设备控制系统,包括:打印设备、打印模块驱动程序和上层控制软件;

所述打印模块驱动程序包括设备驱动层、功能控制层和接口层,所述设备驱动层用于驱动及控制所述打印设备执行相关控制命令;所述功能控制层用于实现所述打印设备功能的各个操作逻辑;所述接口层用于封装所述打印设备的各个功能,以供所述上层控制软件进行调用;

所述上层控制软件包括调度核心程序,所述调度核心程序用于在打印过程中执行:

接收打印指令,加载打印驱动库和XML打印模板;

遍历XML打印模板中的节点,获取打印驱动程序集名称、命名空间、类名以及打印参数信息;

基于反射机制,动态加载所述驱动程序库中的所述打印驱动程序集,采用工厂模式创建类的实例对象,将所述XML打印模板中的所述打印参数信息赋值给所述类中的相应属性,并将所述实例对象添加到设备列表中;

调用通用打印控制接口控制所述打印设备进行打印操作;

其中,所述XML打印模板中存储有驱动程序库的打印驱动程序集名称、命名空间、类名以及打印参数信息;所述打印驱动库对外提供通用打印接口,且封装有与所述打印设备对应的所述打印驱动程序集以及所述打印参数信息。

可选地,所述开发调度核心程序还封装有打印设备自检、打印设备运行、打印设备退出和打印设备调度方法。

本发明的有益效果在于:

根据规范开发打印机驱动库,并对外提供调用接口,并开发调度核心程序,将打印机打印驱动程序集名、命名空间、类名以及打印机参数信息保存在XML打印模块中,采用工厂模式和反射机制动态加载XML打印模块中的打印驱动程序集并实例化对象,调用打印机驱动库相应接口进行具体操作,实现对于因设备停产需要更换打印机,或者为了提高打印效率增加打印机数量以及扩展打印机硬件池等需求,可以快速、灵活应对,降低开发难度和维护成本。

本发明的装置具有其它的特性和优点,这些特性和优点从并入本文中的附图和随后的具体实施方式中将是显而易见的,或者将在并入本文中的附图和随后的具体实施方式中进行详细陈述,这些附图和具体实施方式共同用于解释本发明的特定原理。

附图说明

通过结合附图对本发明示例性实施例进行更详细的描述,本发明的上述以及其它目的、特征和优势将变得更加明显,在本发明示例性实施例中,相同的参考标号通常代表相同部件。

图1示出了根据本发明的一种通用的打印设备控制方法的步骤图。

图2示出了根据本发明的一个实施例的通用的打印设备控制系统的示意图。

具体实施方式

下面将参照附图更详细地描述本发明。虽然附图中显示了本发明的优选实施例,然而应该理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本发明更加透彻和完整,并且能够将本发明的范围完整地传达给本领域的技术人员。

实施例1

图1示出了根据本发明的一种通用的打印设备控制方法的步骤图。

如图1所示,一种通用的打印设备控制方法,包括:

步骤S101:接收打印指令,加载打印驱动库和XML打印模板,其中,打印驱动库根据预设规范开发并对外提供通用打印接口,打印驱动库封装有与打印设备对应的打印驱动程序集以及打印参数信息,XML打印模板中存有驱动程序库的打印驱动程序集名称、命名空间、类名以及打印参数信息;

在一个具体应用场景中,应用场景为制证领域,利用计算机控制打印机进行个人信息的打印。设备可以是一台打印机,也可以是由多台打印机组成的制证设备。打印过程中,首先接收打印指令,并加载打印驱动库和XML打印模板。

其中,打印机驱动库需要根据要求开发,打印机的控制方式可以采用Windows标准打印,也可以采用打印机直接控制方式,本发明对打印机的具体控制方式没有要求。打印机驱动库是控制打印机的底层接口,基于各种功能接口实现电脑对打印机的控制。为了实现打印机的灵活控制,对于不同打印机都需要根据规范开发相应的打印机驱动库。打印机驱动库程序集名、命名空间、类名等需要根据规范进行设置,以便基于反射机制动态加载程序集并实例化对象。打印机驱动库需要对外提供的功能接口功能具体包括初始化设备、启动设备、停止设备、下载打印任务、打印机进卡并打印等,各个厂商的打印机控制都需要按照通用接口进行程序开发。

然后,将打印机驱动库程序集名、命名空间、类名以及打印机参数等信息保存在打印模板XML文件中,XML打印模板即为配置文件。

步骤S102:遍历XML打印模板中的节点,获取打印驱动程序集名称、命名空间、类名以及打印参数信息;

步骤S103:基于反射机制,动态加载驱动程序库中的打印驱动程序集,采用工厂模式创建类的实例对象,将XML打印模板中的打印参数信息赋值给类中的相应属性,并将实例对象添加到设备列表中;

在上述具体应用场景中,步骤S102和步骤S103可以通过开发调度核心程序实现。调度核心程序主要提供获取设备列表、设备自检、设备运行、设备退出以及调度方法等,基于控制逻辑调用打印驱动库进行控制和状态查询。其中非常重要的功能是获取设备列表,基于工厂模式和反射机制动态加载程序集并实例化对象,核心调度程序获取设备列表可以遍历XML文件中的节点并进行对象实例化,以便之后对设备进行控制。其中,基于工厂模式和反射机制动态加载程序集并实例化对象为现有技术,本领域技术人员容易实现,其原理此处不再赘述。

本实施例中,在调用通用打印控制接口控制打印设备进行打印操作之前,还包括:

步骤S104:获取打印设备需要绘制的正面图片事件以及反面图片事件,正面图片事件和反面图片事件基于XML打印模板中的打印参数信息生成待打印的正面图片或反面图片,以供打印设备下载打印任务时使用。

在上述具体应用场景中,调度核心程序获取打印机需要绘制的正面图片事件以及反面图片事件,事件基于打印模板XML中保存的打印参数生成待打印的正面图片或者反面图片,供打印机下载打印任务时使用。

本发明的通用的打印设备控制方法采用工厂模式和反射机制动态加载XML文件并实例化对象这种处理机制可以对打印机进行灵活配置,如需更换打印机设备,只需要开发相应的打印机驱动库,其余信息可以进行动态配置,如需改变打印机数量,只需动态修改配置文件即可。

实施例2

本发明实施例提供一种电子设备,电子设备包括:

至少一个处理器;以及,

与至少一个处理器通信连接的存储器;其中,

存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述实施例1的通用的打印设备控制方法。

根据本公开实施例的电子设备包括存储器和处理器。

该存储器用于存储非暂时性计算机可读指令。具体地,存储器可以包括一个或多个计算机程序产品,该计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。该易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。该非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。

该处理器可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制电子设备中的其它组件以执行期望的功能。在本公开的一个实施例中,该处理器用于运行该存储器中存储的该计算机可读指令。

本领域技术人员应能理解,为了解决如何获得良好用户体验效果的技术问题,本实施例中也可以包括诸如通信总线、接口等公知的结构,这些公知的结构也应包含在本公开的保护范围之内。

有关本实施例的详细说明可以参考前述各实施例中的相应说明,在此不再赘述。

实施例3

本发明实施例还提出一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行上述实施例1的通用的打印设备控制方法。

根据本公开实施例的计算机可读存储介质,其上存储有非暂时性计算机可读指令。当该非暂时性计算机可读指令由处理器运行时,执行前述的本公开各实施例方法的全部或部分步骤。

上述计算机可读存储介质包括但不限于:光存储介质(例如:CD-ROM和DVD)、磁光存储介质(例如:MO)、磁存储介质(例如:磁带或移动硬盘)、具有内置的可重写非易失性存储器的媒体(例如:存储卡)和具有内置ROM的媒体(例如:ROM盒)。

实施例4

如图2所示,本发明实施例还提出一种制证打印设备通用控制系统,包括:打印设备、打印模块驱动程序和上层控制软件;

打印设备包括传动机构以及至少一个打印机;

打印模块驱动程序包括设备驱动层、功能控制层和接口层,设备驱动层用于驱动及控制打印设备执行相关控制命令;功能控制层用于实现打印设备功能的各个操作逻辑;接口层用于封装打印设备的各个功能,以供上层控制软件进行调用;

上层控制软件包括调度核心程序,调度核心程序用于在打印过程中执行:

遍历XML打印模板中的节点,获取打印驱动程序集名称、命名空间、类名以及打印参数信息;

基于反射机制,动态加载驱动程序库中的打印驱动程序集,采用工厂模式创建类的实例对象,将XML打印模板中的打印参数信息赋值给类中的相应属性,并将实例对象添加到设备列表中;

调用通用打印控制接口控制打印设备进行打印操作;

其中,XML打印模板中存储有驱动程序库的打印驱动程序集名称、命名空间、类名以及打印参数信息;打印驱动库对外提供通用打印接口,且封装有与打印设备对应的打印驱动程序集以及打印参数信息。

具体地,参考图2,系统结构分为三层:第一层为硬件设备,包括打印机和传动机构。第二层为打印模块驱动程序,也分为三层:第一层为设备驱动层,用于驱动及控制硬件(如打印机和传送机构)设备执行相关命令。第二层为功能控制层,用于实现硬件功能的各个逻辑,如下载打印任务,传送卡等功能。第三层为接口层,用于封装硬件设备的各个功能供上层控制软件进行调用。当硬件设备的选型或驱动发生变化时,模块驱动程序的接口层保持不变,不影响上层控制软件的调用。第三层为上层控制软件,其中调度核心程序至关重要,它获取设备列表,将打印机驱动库程序集名、命名空间、类名以及打印机参数信息保存在XML文件中,基于工厂模式和反射机制动态加载程序集并实例化对象,并且封装了设备自检、设备运行、设备退出以及打印设备调度方法。

综上,本发明创新性地采用工厂模式和反射机制动态加载打印驱动程序集,对于因设备停产需要更换打印机,或者为了提高打印效率增加打印机数量以及扩展打印机硬件池等需求,可以快速、灵活应对,降低开发难度和维护成本。

以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。

相关技术
  • 通用的打印设备控制方法、电子设备、存储介质及系统
  • 数据处理方法、系统、存储介质及3D打印设备、控制方法
技术分类

06120112686311