CN109976683B - 数据的打印方法、装置、设备和存储介质 - Google Patents
数据的打印方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN109976683B CN109976683B CN201910152240.6A CN201910152240A CN109976683B CN 109976683 B CN109976683 B CN 109976683B CN 201910152240 A CN201910152240 A CN 201910152240A CN 109976683 B CN109976683 B CN 109976683B
- Authority
- CN
- China
- Prior art keywords
- printing
- data
- printer
- type
- printed
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1204—Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1244—Job translation or job parsing, e.g. page banding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1253—Configuration of print job parameters, e.g. using UI at the client
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Record Information Processing For Printing (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
本申请涉及一种数据的打印方法、装置、设备和存储介质。该方法包括:当检测到访问浏览器页面而产生的打印操作时,获取打印数据;所述打印数据包括打印参数以及至少一个待打印内容;对所述打印数据进行解析,得到打印机的打印指令,并将所述打印指令发送至所述打印机;所述打印指令用于指示所述打印机根据所述打印参数对所述至少一个待打印内容进行打印。该方法提高了打印结果的准确性,而且可以实现批量处理打印数据,提高了数据的打印效率。
Description
技术领域
本申请涉及打印领域,特别是涉及一种数据的打印方法、装置、设备和存储介质。
背景技术
目前,在很多行业中,需要使用识别码。其中,识别码可以为条形码、二维码等。以条形码为例,由于条形码具有快速输入、可靠性高、采集信息量大、灵活实用等优点,因而在各个行业均得到了广泛应用。比如,在医学领域中,当患者需要进行化验时,工作人员会打印患者的条形码标签,以便患者根据条形码标签取化验单。
传统技术中,条形码标签的打印过程为:工作人员通过可视化软件对条形码标签的样式进行制定,并打印制定好的条形码标签。
但是,由于传统技术是工作人员通过操作可视化软件进行打印的,因此,传统技术的打印结果准确性较低。
发明内容
基于此,有必要针对传统方式的打印结果准确性较低的技术问题,提供一种数据的打印方法、装置、设备和存储介质。
一种数据的打印方法,包括:
当检测到访问浏览器页面而产生的打印操作时,获取打印数据;所述打印数据包括打印参数以及至少一个待打印内容;
对所述打印数据进行解析,得到打印机的打印指令,并将所述打印指令发送至所述打印机;所述打印指令用于指示所述打印机根据所述打印参数对所述至少一个待打印内容进行打印。
在其中一个实施例中,所述对所述打印数据进行解析,得到打印机的打印指令,包括:
对所述打印数据进行第一格式类型转换,得到数组类型的打印数据;
对所述数组类型的打印数据进行第二格式类型转换,得到字符串类型的打印数据;
对所述字符串类型的打印数据进行第三格式类型转换,得到所述打印参数以及所述至少一个待打印内容;
根据所述打印参数以及所述至少一个待打印内容,生成打印机的打印指令。
在其中一个实施例中,所述将所述打印指令发送至所述打印机,包括:
获取所述打印参数中的数据打印类型,根据所述数据打印类型从所述打印机的动态链接库中确定目标调用函数;
通过调用所述目标调用函数,将所述打印指令发送至所述打印机。
在其中一个实施例中,所述根据所述数据打印类型从所述打印机的动态链接库中确定目标调用函数,包括:
根据所述数据打印类型和预设的函数映射关系,将所述动态链接库中与所述数据打印类型对应的调用函数确定为目标调用函数;所述函数映射关系包括数据打印类型与调用函数间的映射关系。
在其中一个实施例中,所述将所述打印指令发送至所述打印机,包括:
通过调用所述打印机的动态链接库中的发送函数,将所述打印指令发送至所述打印机。
在其中一个实施例中,所述数据打印类型为文本、条形码以及二维码中的至少一种。
在其中一个实施例中,所述打印参数包括数据打印类型、打印位置、打印宽度、打印墨度、打印高度以及旋转角度中的至少一种。
一种数据的打印装置,包括:
获取模块,用于当检测到访问浏览器页面而产生的打印操作时,获取打印数据;所述打印数据包括打印参数以及至少一个待打印内容;
处理模块,用于对所述打印数据进行解析,得到打印机的打印指令;所述打印指令用于指示所述打印机根据所述打印参数对所述至少一个待打印内容进行打印;
发送模块,用于将所述打印指令发送至所述打印机。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
当检测到访问浏览器页面而产生的打印操作时,获取打印数据;所述打印数据包括打印参数以及至少一个待打印内容;
对所述打印数据进行解析,得到打印机的打印指令,并将所述打印指令发送至所述打印机;所述打印指令用于指示所述打印机根据所述打印参数对所述至少一个待打印内容进行打印。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
当检测到访问浏览器页面而产生的打印操作时,获取打印数据;所述打印数据包括打印参数以及至少一个待打印内容;
对所述打印数据进行解析,得到打印机的打印指令,并将所述打印指令发送至所述打印机;所述打印指令用于指示所述打印机根据所述打印参数对所述至少一个待打印内容进行打印。
本申请实施例提供的数据的打印方法、装置、设备和存储介质,在检测到访问浏览器页面而产生的打印操作时,计算机设备能够获取打印数据,并对打印数据进行解析得到打印机的打印指令,然后将得到的打印指令发送至打印机。在数据打印的过程中,由于计算机设备在检测到打印操作后,能够直接从浏览器的页面上获取打印数据,并解析打印数据生成打印机的打印指令,而不需要工作人员通过可视化软件操作打印数据,降低了人为参与的程度,从而提高了打印结果的准确性。另外,由于计算机设备发送给打印机的打印指令中包含了至少一个待打印内容,即计算机设备可以批量处理打印数据,以实现打印机的批量打印,从而提高了数据的打印效率。
附图说明
图1为本申请实施例提供的数据的打印方法应用的系统架构图;
图2为一实施例提供的数据的打印方法的流程示意图;
图3为一实施例提供的浏览器的扩展插件安装过程的界面示意图;
图4为一实施例提供的浏览器的扩展插件安装过程的界面示意图;
图5为一实施例提供的浏览器的扩展插件安装过程的界面示意图;
图6为另一实施例提供的数据的打印方法的流程示意图;
图7为另一实施例提供的数据的打印方法的流程示意图;
图8为一实施例提供的数据的打印装置的内部结构示意图;
图9为另一实施例提供的数据的打印装置的内部结构示意图;
图10为另一实施例提供的数据的打印装置的内部结构示意图;
图11为另一实施例提供的数据的打印装置的内部结构示意图;
图12为一实施例提供的计算机设备的内部结构示意图。
具体实施方式
本申请实施例提供的数据的打印方法,可以适用于如图1所示的系统,该系统可以包括客户端10、远端服务器11和打印机12。其中,客户端10分别与远端服务器11和打印机12相连。客户端10通过浏览器与远端服务器11中的数据库进行数据交互,客户端10通过打印机12实现数据的打印。可选的,客户端10可以为个人计算机(Personal Computer,PC)、智能手机、穿戴式设备以及个人数字助理等具有上网功能、且可以与外部设备或者用户交互的电子设备。远端服务器11可以是独立的服务器,也可以是多个服务器组成的服务器集群。打印机12为多功能打印机。本申请实施例在此对客户端10、远端服务器11以及打印机12的具体形式不做限定。
传统技术中,通常是工作人员通过操作可视化软件进行数据的打印,但是,传统方式的打印结果准确性较低。为此,本申请实施例提供的数据的打印方法、装置、设备和存储介质,旨在解决上述传统技术中存在的技术问题。
需要说明的是,本申请实施例提供的数据的打印方法,其执行主体可以是数据的打印装置,该装置可以通过软件、硬件或者软硬件结合的方式实现成为计算机设备的部分或者全部。可选的,该计算机设备可以为上述客户端。下述方法实施例的执行主体以计算机设备为客户端为例来进行说明。
为了使本申请的目的、技术方案及优点更加清楚明白,通过下述实施例并结合附图,对本申请实施例中的技术方案进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
图2为一实施例提供的数据的打印方法的流程示意图。本实施例涉及的是客户端如何根据浏览器页面上产生的打印操作进行数据的打印的过程。具体的,如图2所示,该方法可以包括:
S101、当检测到访问浏览器页面而产生的打印操作时,获取打印数据;所述打印数据包括打印参数以及至少一个待打印内容。
其中,打印参数是指用于控制打印机按照需求进行打印的参数。打印参数可以包括数据打印类型、打印位置、打印宽度、打印墨度、打印高度以及旋转角度中的至少一种,但并不限于上述所列举的参数。待打印内容是指需要打印的具体内容,该具体内容可包括文字、条码、图片等。
用户通过客户端的浏览器与服务器进行数据的交互,从而从服务器上获取到所需的目标数据,即用户可以通过浏览器页面查看所需的目标数据。当需要对目标数据进行打印时,客户端获取用户在浏览器页面上触发的打印操作,并获取用户所选择打印的目标数据作为待打印内容。可选的,目标数据可以为一个对象对应的数据,也可以为多个对象对应的多个数据(即不同的对象对应不同的数据),这样,待打印内容可以为一个,也可以为多个。客户端上展示的浏览器页面中提供有一个或多个对象,并在每个对象对应的位置处提供有选择控件,检测用户触发选择控件产生的选中操作,根据选中操作选中对应的对象。在某些实施例中,可提供一键全选控件,客户端获取用户对一键全选控件的触发操作,根据该触发操作获取全部选中的对象作为待打印内容。同时,客户端在浏览器打印页面提供打印参数的设置控件,检测用户对打印参数的设置控件的选择操作,根据选择操作所选中的设置,获取打印参数。
为了能够通过浏览器实现对数据的打印,需要预先安装浏览器的扩展插件。其中,扩展插件用于对浏览器的功能进行扩展,且该扩展插件并非第三方插件。以Chrome浏览器为例,如图3至图5所示,具体的安装过程可以为:预先将扩展插件保存在客户端本地指定位置(以本地磁盘D中),打开浏览器,如图3所示,点击浏览器中的控件1,从下拉菜单中包括的“书签”、“查找”、“设置”等选项中选中“设置”选项,进入如图4所示的界面(若为Chrome浏览器,可以直接在浏览器地址栏输入“chrome://extensions/”进入如图4所示的界面),然后从该界面中包括的“历史记录”、“扩展选项”、“设置”等功能中选中“扩展程序”功能,并从“扩展程序”功能下面展开的“加载已解压的扩展程序...”和“打包扩展程序...”的按钮中,点击“加载已解压的扩展程序...”按钮,再接着在弹出的“选择扩展程序目录”对话框中,从本地磁盘(C:)、本地磁盘(D:)、本地磁盘(E:)、本地磁盘(F:)中找到扩展插件所在的指定位置(本地磁盘D),点击“确定”按钮即可完成扩展插件的安装。
在成功加载浏览器的扩展插件之后,该扩展插件便可以检测用户在浏览器页面上触发的打印操作,并可以依据用户的选择操作获取打印参数和待打印内容。示例性的,以上述系统为医学领域中的检验信息系统,且仅以打印患者的相关数据为例,在用户通过客户端的浏览器登录检验信息系统之后,客户端可以根据输入的患者的标识,从服务器中获取到患者的相关数据(例如,相关数据可以为患者的属性信息,如患者的年龄、性别、病史以及待检查项目等)。当需要对浏览器的页面上显示的数据进行打印时,浏览器的扩展插件检测用户在浏览器页面上触发的打印操作,并获取将用户选择的患者的数据作为待打印内容,以及获取默认的打印参数或者用户设置的打印参数作为打印参数。
S102、对所述打印数据进行解析,得到打印机的打印指令;所述打印指令用于指示所述打印机根据所述打印参数对所述至少一个待打印内容进行打印。
其中,在获取到打印数据之后,客户端上安装的浏览器扩展插件便对打印数据进行解析,并根据解析结果生成打印机的打印指令,然后将生成的打印指令发送给打印机,以使打印机根据打印参数对至少一个待打印内容进行打印。可选的,打印参数所包括的数据打印类型可为文本、条形码以及二维码中的至少一种。针对此情况,在打印机得到打印参数和至少一个待打印内容之后,打印机可以将至少一个待打印内容打印成文本格式,也可以打印成条形码格式,还可以打印成二维码格式。
S103、将所述打印指令发送至所述打印机。
本申请实施例提供的数据的打印方法,在检测到访问浏览器页面而产生的打印操作时,客户端能够获取打印数据,并对打印数据进行解析得到打印机的打印指令,然后将得到的打印指令发送至打印机。在数据打印的过程中,由于客户端在检测到打印操作后,能够直接从浏览器的页面上获取打印数据,并解析打印数据生成打印机的打印指令,而不需要工作人员通过可视化软件操作打印数据,降低了人为参与的程度,从而提高了打印结果的准确性。另外,由于客户端发送给打印机的打印指令中包含了至少一个待打印内容,即客户端可以批量处理打印数据,以实现打印机的批量打印,从而提高了数据的打印效率。
图6为另一实施例提供的数据的打印方法的流程示意图。本实施例涉及的是客户端如何解析打印数据的过程。在上述实施例的基础上,可选的,如图6所示,上述S102可以包括:
S201、对所述打印数据进行第一格式类型转换,得到数组类型的打印数据。
其中,打印数据在传输的过程中,都是以数据流的形式进行传输,即浏览器的扩展插件是以数据流的方式获取到打印数据。这样,在对打印数据的解析过程中,浏览器的扩展插件需要对获取到的打印数据进行第一格式类型转换,得到数组类型的打印数据。可选的,浏览器的扩展插件通过Stream.Read(byte[]dest,int start,int length),将数据流格式的打印数据转换为数组类型的打印数据。其中,Read参数说明:byte[]dest表示目标对象,int start表示从哪个位置开始读取,int length表示读取多数据的长度。
S202、对所述数组类型的打印数据进行第二格式类型转换,得到字符串类型的打印数据。
其中,在浏览器的扩展插件得到数组类型的打印数据之后,需要对数组类型的打印数据进行第二格式类型转换,得到字符串类型的打印数据。可选的,浏览器的扩展插件可以通过Encoding.UTF8.GetString(byte[]src),将数组类型的打印数据转换为字符串类型的打印数据。其中,byte[]src表示上述S201中得到的数组类型的打印数据。
S203、对所述字符串类型的打印数据进行第三格式类型转换,得到所述打印参数以及所述至少一个待打印内容。
其中,在浏览器的扩展插件得到字符串类型的打印数据之后,需要对字符串类型的打印数据进行第三格式类型转换,得到打印参数以及至少一个待打印内容。可选的,浏览器的扩展插件可以通过JObject.Parse(String src),将字符串类型的打印数据转换为JObject对象,从而得到打印参数以及至少一个待打印内容。
S204、根据所述打印参数以及所述至少一个待打印内容,生成打印机的打印指令。
本实施例提供的数据的打印方法,客户端可以对获取到的打印数据通过多次格式类型转换,从而解析得到打印参数和至少一个待打印内容,并根据解析得到的打印参数和至少一个待打印内容生成打印机的打印指令。在打印数据解析的过程中,由于客户端是通过浏览器的扩展插件自动解析打印数据,并能够根据解析结果自动生成打印机的打印指令,进一步降低了人为参与的程度,从而进一步提高了打印结果的准确性,同时,提高了人机交互的智能性。
图7为另一实施例提供的数据的打印方法的流程示意图。本实施例涉及的是客户端如何将打印指令发送给打印机的过程。在上述实施例的基础上,作为一种可选的实施方式,如图7所示,上述S103可以包括:
S301、获取所述打印参数中的数据打印类型。
其中,用户在触发打印操作之后,可以根据实际需求对数据打印类型进行设置。可选的,数据打印类型可以包括文本、条形码以及二维码中的至少一种。
客户端检测到用户触发打印操作后,获取打印参数中的数据打印类型。
S302、根据所述数据打印类型从所述打印机的动态链接库中确定目标调用函数。
其中,为了能够实现数据的打印,客户端在安装打印机的驱动程序时,还需要安装打印机的动态链接库。这样,在客户端上安装的浏览器的扩展插件获取到数据打印类型之后,浏览器的扩展插件可以根据数据打印类型从打印机的动态链接库中选取与数据打印类型对应的目标调用函数。
可选的,上述根据所述数据打印类型从所述打印机的动态链接库中确定目标调用函数的过程可以为:浏览器的扩展插件根据所述数据打印类型和预设的函数映射关系,将所述动态链接库中与所述数据打印类型对应的调用函数确定为目标调用函数;所述函数映射关系包括数据打印类型与调用函数间的映射关系。
以某种特定的打印机为例,当数据打印类型为文本时,浏览器的扩展插件确定的目标调用函数可以为windowsfont(int x,int y,int fontheight,int rotation,intfontstyle,int fontunderline,string szFaceName,string content)。其中,x表示文字打印起始位置的x坐标,y表示文字打印起始位置的y坐标,fontheight表示文字的高度,rotation表示旋转角度,fontstyle表示文字的字体样式,fontunderline表示是否打印下划线,szFaceName表示文字字体的family,content表示待打印的文字内容。
当数据打印类型为条形码时,浏览器的扩展插件确定的目标调用函数可以为barcode(string x,string y,string type,string height,string readable,stringrotation,string narrow,string wide,string code)。其中,x表示文字打印起始位置的x坐标,y表示文字打印起始位置的y坐标,type表示条形码类型,height表示条形码高度,readable表示条形码是否可读,rotation表示旋转角度,narrow表示是否压缩,wide表示条形码间距,code表示条形码的内容。
当数据打印类型为二维码时,浏览器的扩展插件确定的目标调用函数可以为sendcommand(string printercommand)。其中,printercommand表示打印指令,即上述解析得到的打印参数和至少一个待打印内容。
S303、通过调用所述目标调用函数,将所述打印指令发送至所述打印机。
作为另一种可选的实施方式,上述S103可以包括:通过调用所述打印机的动态链接库中的发送函数,将所述打印指令发送至所述打印机。
其中,以某种特定的打印机为例,上述发送函数可以为sendcommand(stringprintercommand)。其中,printercommand表示打印指令,即上述解析得到的打印参数和至少一个待打印内容。
本实施例提供的数据的打印方法,由于客户端可以通过调用打印机的动态链接库中的相关函数向打印机发送打印指令,使得打印机在接收到打印指令后,能够准确解读打印指令,并能够根据解读的打印指令进行数据的打印,这样,便进一步提高了打印结果的准确性。
应该理解的是,虽然图2至图7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2至图7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
图8为一实施例提供的数据的打印装置的结构示意图。如图8所示,该装置可以包括:获取模块20、处理模块21和发送模块22。
具体的,获取模块20用于当检测到访问浏览器页面而产生的打印操作时,获取打印数据;所述打印数据包括打印参数以及至少一个待打印内容;
处理模块21用于对所述打印数据进行解析,得到打印机的打印指令;所述打印指令用于指示所述打印机根据所述打印参数对所述至少一个待打印内容进行打印;
发送模块22用于将所述打印指令发送至所述打印机。
本实施例提供的数据的打印装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
图9为另一实施例提供的数据的打印装置的结构示意图。在上述实施例的基础上,可选的,如图9所示,处理模块21可以包括第一转换单元211、第二转换单元212、第三转换单元213和生成单元214。
具体的,第一转换单元211用于对所述打印数据进行第一格式类型转换,得到数组类型的打印数据;
第二转换单元212用于对所述数组类型的打印数据进行第二格式类型转换,得到字符串类型的打印数据;
第三转换单元213用于对所述字符串类型的打印数据进行第三格式类型转换,得到所述打印参数以及所述至少一个待打印内容;
生成单元214用于根据所述打印参数以及所述至少一个待打印内容,生成打印机的打印指令。
本实施例提供的数据的打印装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
图10为另一实施例提供的数据的打印装置的结构示意图。在上述实施例的基础上,作为一种可选的实施方式,如图10所示,发送模块22可以包括:获取单元221、确定单元222和第一发送单元223。
具体的,获取单元221用于获取所述打印参数中的数据打印类型;
确定单元222用于根据所述数据打印类型从所述打印机的动态链接库中确定目标调用函数;
第一发送单元223用于通过调用所述目标调用函数,将所述打印指令发送至所述打印机。
可选的,确定单元222具体用于根据所述数据打印类型和预设的函数映射关系,将所述动态链接库中与所述数据打印类型对应的调用函数确定为目标调用函数;所述函数映射关系包括数据打印类型与调用函数间的映射关系。
图11为另一实施例提供的数据的打印装置的结构示意图。在上述实施例的基础上,作为另一种可选的实施方式,如图11所示,发送模块22可以包括:第二发送单元224。
具体的,第二发送单元224用于通过调用所述打印机的动态链接库中的发送函数,将所述打印指令发送至所述打印机。
可选的,所述数据打印类型为文本、条形码以及二维码中的至少一种。
可选的,所述打印参数包括数据打印类型、打印位置、打印宽度、打印墨度、打印高度以及旋转角度中的至少一种。
关于数据的打印装置的具体限定可以参见上文中对于数据的打印方法的限定,在此不再赘述。上述数据的打印装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是客户端,其内部结构图可以如图12所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据的打印方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
当检测到访问浏览器页面而产生的打印操作时,获取打印数据;所述打印数据包括打印参数以及至少一个待打印内容;
对所述打印数据进行解析,得到打印机的打印指令,并将所述打印指令发送至所述打印机;所述打印指令用于指示所述打印机根据所述打印参数对所述至少一个待打印内容进行打印。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:对所述打印数据进行第一格式类型转换,得到数组类型的打印数据;对所述数组类型的打印数据进行第二格式类型转换,得到字符串类型的打印数据;对所述字符串类型的打印数据进行第三格式类型转换,得到所述打印参数以及所述至少一个待打印内容;根据所述打印参数以及所述至少一个待打印内容,生成打印机的打印指令。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取所述打印参数中的数据打印类型,根据所述数据打印类型从所述打印机的动态链接库中确定目标调用函数;通过调用所述目标调用函数,将所述打印指令发送至所述打印机。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据所述数据打印类型和预设的函数映射关系,将所述动态链接库中与所述数据打印类型对应的调用函数确定为目标调用函数;所述函数映射关系包括数据打印类型与调用函数间的映射关系。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:通过调用所述打印机的动态链接库中的发送函数,将所述打印指令发送至所述打印机。
可选的,所述数据打印类型为文本、条形码以及二维码中的至少一种。
可选的,所述打印参数包括数据打印类型、打印位置、打印宽度、打印墨度、打印高度以及旋转角度中的至少一种。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
当检测到访问浏览器页面而产生的打印操作时,获取打印数据;所述打印数据包括打印参数以及至少一个待打印内容;
对所述打印数据进行解析,得到打印机的打印指令,并将所述打印指令发送至所述打印机;所述打印指令用于指示所述打印机根据所述打印参数对所述至少一个待打印内容进行打印。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对所述打印数据进行第一格式类型转换,得到数组类型的打印数据;对所述数组类型的打印数据进行第二格式类型转换,得到字符串类型的打印数据;对所述字符串类型的打印数据进行第三格式类型转换,得到所述打印参数以及所述至少一个待打印内容;根据所述打印参数以及所述至少一个待打印内容,生成打印机的打印指令。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取所述打印参数中的数据打印类型,根据所述数据打印类型从所述打印机的动态链接库中确定目标调用函数;通过调用所述目标调用函数,将所述打印指令发送至所述打印机。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据所述数据打印类型和预设的函数映射关系,将所述动态链接库中与所述数据打印类型对应的调用函数确定为目标调用函数;所述函数映射关系包括数据打印类型与调用函数间的映射关系。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:通过调用所述打印机的动态链接库中的发送函数,将所述打印指令发送至所述打印机。
可选的,所述数据打印类型为文本、条形码以及二维码中的至少一种。
可选的,所述打印参数包括数据打印类型、打印位置、打印宽度、打印墨度、打印高度以及旋转角度中的至少一种。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种数据的打印方法,其特征在于,包括:
当检测到访问浏览器页面而产生的打印操作时,获取打印数据;所述打印数据包括打印参数以及至少一个待打印内容;
对所述打印数据进行第一格式类型转换,得到数组类型的打印数据;
对所述数组类型的打印数据进行第二格式类型转换,得到字符串类型的打印数据;
对所述字符串类型的打印数据进行第三格式类型转换,得到所述打印参数以及所述至少一个待打印内容;
根据所述打印参数以及所述至少一个待打印内容,生成打印机的打印指令,并将所述打印指令发送至所述打印机;所述打印指令用于指示所述打印机根据所述打印参数对所述至少一个待打印内容进行打印。
2.根据权利要求1所述的方法,其特征在于,所述将所述打印指令发送至所述打印机,包括:
获取所述打印参数中的数据打印类型,根据所述数据打印类型从所述打印机的动态链接库中确定目标调用函数;
通过调用所述目标调用函数,将所述打印指令发送至所述打印机。
3.根据权利要求2所述的方法,其特征在于,所述根据所述数据打印类型从所述打印机的动态链接库中确定目标调用函数,包括:
根据所述数据打印类型和预设的函数映射关系,将所述动态链接库中与所述数据打印类型对应的调用函数确定为目标调用函数;所述函数映射关系包括数据打印类型与调用函数间的映射关系。
4.根据权利要求1所述的方法,其特征在于,所述将所述打印指令发送至所述打印机,包括:
通过调用所述打印机的动态链接库中的发送函数,将所述打印指令发送至所述打印机。
5.根据权利要求2所述的方法,其特征在于,所述数据打印类型为文本、条形码以及二维码中的至少一种。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述打印参数包括数据打印类型、打印位置、打印宽度、打印墨度、打印高度以及旋转角度中的至少一种。
7.一种数据的打印装置,其特征在于,包括:
获取模块,用于当检测到访问浏览器页面而产生的打印操作时,获取打印数据;所述打印数据包括打印参数以及至少一个待打印内容;
处理模块,用于对所述打印数据进行第一格式类型转换,得到数组类型的打印数据;对所述数组类型的打印数据进行第二格式类型转换,得到字符串类型的打印数据;对所述字符串类型的打印数据进行第三格式类型转换,得到所述打印参数以及所述至少一个待打印内容;根据所述打印参数以及所述至少一个待打印内容,生成打印机的打印指令;所述打印指令用于指示所述打印机根据所述打印参数对所述至少一个待打印内容进行打印;
发送模块,用于将所述打印指令发送至所述打印机。
8.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项中所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910152240.6A CN109976683B (zh) | 2019-02-28 | 2019-02-28 | 数据的打印方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910152240.6A CN109976683B (zh) | 2019-02-28 | 2019-02-28 | 数据的打印方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109976683A CN109976683A (zh) | 2019-07-05 |
CN109976683B true CN109976683B (zh) | 2022-08-02 |
Family
ID=67077641
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910152240.6A Active CN109976683B (zh) | 2019-02-28 | 2019-02-28 | 数据的打印方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109976683B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111506276A (zh) * | 2020-04-21 | 2020-08-07 | 北京易点淘网络技术有限公司 | 打印二维码标签的方法及装置 |
CN111933250A (zh) * | 2020-07-17 | 2020-11-13 | 东软医疗系统股份有限公司 | 一种打印医疗图像的方法、装置和计算机设备 |
CN114138214B (zh) * | 2022-01-27 | 2022-04-29 | 北京辰光融信技术有限公司 | 一种自动生成打印文件的方法、装置和电子设备 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1313548A (zh) * | 2000-03-13 | 2001-09-19 | 日本电气株式会社 | 打印系统及打印方法 |
CN1510637A (zh) * | 2002-12-25 | 2004-07-07 | 深圳市中兴通讯股份有限公司 | 一种打印绘制图形化文件的通用方法及动态链接库 |
CN101256488A (zh) * | 2008-03-28 | 2008-09-03 | 山东浪潮齐鲁软件产业股份有限公司 | Web打印组件的设计和实现方法 |
CN101393513A (zh) * | 2007-09-19 | 2009-03-25 | 北京思软科技有限公司 | 用特定的字符串实现文件自定义格式打印的方法 |
CN101571793A (zh) * | 2009-04-24 | 2009-11-04 | 广州市易票联电子商务有限公司 | 一种打印页面信息的方法及其装置、一种控件 |
CN103522776A (zh) * | 2012-07-05 | 2014-01-22 | 中国农业银行股份有限公司山西省分行 | 一种打印控制方法及系统 |
CN106528006A (zh) * | 2015-09-10 | 2017-03-22 | 阿里巴巴集团控股有限公司 | 一种页面打印方法及装置 |
CN107451107A (zh) * | 2017-08-10 | 2017-12-08 | 中国民航信息网络股份有限公司 | 基于xml的数据流转换方法和装置 |
CN109249712A (zh) * | 2018-11-23 | 2019-01-22 | 成都易联云网络科技有限公司 | 一种打印机及其打印机系统和打印机控制方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001125889A (ja) * | 1999-10-26 | 2001-05-11 | Alps Electric Co Ltd | ラベルプリンタ |
JP2007226324A (ja) * | 2006-02-21 | 2007-09-06 | Seiko Epson Corp | ドライバプログラム、プリンタシステム、プリンタ、及び印刷方法 |
CN103116481B (zh) * | 2013-03-11 | 2016-08-03 | 朱兴东 | 打印票据的辅助系统、设备及方法 |
CN104924793B (zh) * | 2015-06-16 | 2017-09-19 | 深圳市新国都支付技术有限公司 | Pos终端兼容各类收银设备小票信息打印的方法 |
-
2019
- 2019-02-28 CN CN201910152240.6A patent/CN109976683B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1313548A (zh) * | 2000-03-13 | 2001-09-19 | 日本电气株式会社 | 打印系统及打印方法 |
CN1510637A (zh) * | 2002-12-25 | 2004-07-07 | 深圳市中兴通讯股份有限公司 | 一种打印绘制图形化文件的通用方法及动态链接库 |
CN101393513A (zh) * | 2007-09-19 | 2009-03-25 | 北京思软科技有限公司 | 用特定的字符串实现文件自定义格式打印的方法 |
CN101256488A (zh) * | 2008-03-28 | 2008-09-03 | 山东浪潮齐鲁软件产业股份有限公司 | Web打印组件的设计和实现方法 |
CN101571793A (zh) * | 2009-04-24 | 2009-11-04 | 广州市易票联电子商务有限公司 | 一种打印页面信息的方法及其装置、一种控件 |
CN103522776A (zh) * | 2012-07-05 | 2014-01-22 | 中国农业银行股份有限公司山西省分行 | 一种打印控制方法及系统 |
CN106528006A (zh) * | 2015-09-10 | 2017-03-22 | 阿里巴巴集团控股有限公司 | 一种页面打印方法及装置 |
CN107451107A (zh) * | 2017-08-10 | 2017-12-08 | 中国民航信息网络股份有限公司 | 基于xml的数据流转换方法和装置 |
CN109249712A (zh) * | 2018-11-23 | 2019-01-22 | 成都易联云网络科技有限公司 | 一种打印机及其打印机系统和打印机控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109976683A (zh) | 2019-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109542399B (zh) | 软件开发方法、装置、终端设备及计算机可读存储介质 | |
CN109976683B (zh) | 数据的打印方法、装置、设备和存储介质 | |
CN109901834B (zh) | 文档页面生成方法、装置、计算机设备和存储介质 | |
CN109814854B (zh) | 项目框架生成方法、装置、计算机设备和存储介质 | |
KR101033017B1 (ko) | 변경 요청 폼 주석 | |
CN108595220B (zh) | 应用组件的处理方法、设备及计算机可读存储介质 | |
CN108280219B (zh) | 文本翻译方法、装置、计算机设备和存储介质 | |
CN110162453B (zh) | 测试方法、装置、计算机可读存储介质和计算机设备 | |
CN112130729B (zh) | 页面处理方法、装置、计算机设备和存储介质 | |
CN110888709A (zh) | 监控屏的智能操作方法、装置、计算机设备和存储介质 | |
CN110659092A (zh) | 网页截图方法、装置、计算机设备和存储介质 | |
CN109101294B (zh) | 数据采集方法及插件、电子设备及存储介质 | |
CN111459541A (zh) | 应用程序的打包方法、装置、计算机设备和存储介质 | |
CN111596911A (zh) | 生成控件的方法、装置、计算机设备和存储介质 | |
CN111739136B (zh) | 渲染方法、计算机设备和存储介质 | |
US11314219B2 (en) | Information device, terminal device and recording medium | |
CN111190609B (zh) | 业务的处理方法、装置、设备和存储介质 | |
CN113467862A (zh) | 桌面快捷方式的生成方法、装置、移动终端和存储介质 | |
KR101689984B1 (ko) | 프로그래머블 컨트롤러, 프로그래머블 컨트롤러 시스템 및 실행 에러 정보 작성 방법 | |
CN114006885A (zh) | 一种基于智能设备的数据采集方法、装置及电子设备 | |
CN108287707B (zh) | Jsx文件生成方法、装置、存储介质和计算机设备 | |
CN110865943A (zh) | 接口测试方法、装置、计算机设备和存储介质 | |
CN111597151A (zh) | 文件生成方法、装置、计算机设备和存储介质 | |
CN112433929A (zh) | 网页调试方法、装置、计算机设备和存储介质 | |
CN111176986A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |