发明内容
本发明实施例提供一种基于主机平台的二维码打印方法及装置,以解决现有技术中大型主机无法将OS/390环境下基于EBCDIC编码的中文内容和中西文混合内容编译成二维矩阵,并转换为标签打印机可以识别的机器码的技术问题。
第一方面,本发明实施例提供一种基于主机平台的二维码打印方法,包括:
接收主机发送的成品标签的数据,所述成品标签的数据中包含钢卷的钢卷号;
通过所述钢卷号生成所述钢卷的序列号;
设定所述成品标签的数据和所述序列号在生成二维码图像时的排列参数;
将待传输数据由第一编码模式转换为第二编码模式,所述待传输数据中包含所述排列参数;
将转为所述第二编码模式的所述待传输数据发送至打印机,以使所述打印机通过所述排列参数打印所述二维码图像。
可选的,所述第一编码模式具体为:EBCDIC编码模式;所述第二编码模式具体为:ASCII编码模式。
可选的,在所述接收主机发送的成品标签的数据的同时,所述方法还包括:
接收所述主机发送的所述二维码图像的生成方式、所述二维码图像在标签上的显示大小、所述二维码图像在标签上的显示位置中的至少一种信息。
可选的,所述待传输数据中还包含:所述二维码图像的生成方式、所述二维码图像在标签上的显示大小、所述二维码图像在标签上的显示位置中的至少一种信息。
第二方面,本发明实施例提供一种基于主机平台的二维码打印装置,包括:
接收模块,用于接收主机发送的成品标签的数据,所述成品标签的数据中包含钢卷的钢卷号;
生成模块,用于通过所述钢卷号生成所述钢卷的序列号;
设定模块,用于设定所述成品标签的数据和所述序列号在生成二维码图像时的排列参数;
转换模块,用于将待传输数据由第一编码模式转换为第二编码模式,所述待传输数据中包含所述排列参数;
发送模块,用于将转为所述第二编码模式的所述待传输数据发送至打印机,以使所述打印机通过所述排列参数打印所述二维码图像。
可选的,所述第一编码模式具体为:EBCDIC编码模式;所述第二编码模式具体为:ASCII编码模式。
可选的,所述接收模块,还用于:
在接收主机发送的成品标签的数据的同时,接收所述主机发送的所述二维码图像的生成方式、所述二维码图像在标签上的显示大小、所述二维码图像在标签上的显示位置中的至少一种信息。
可选的,所述待传输数据中还包含:所述二维码图像的生成方式、所述二维码图像在标签上的显示大小、所述二维码图像在标签上的显示位置中的至少一种信息。
本发明有益效果如下:
由于在本发明实施例中,提供了一种基于主机平台的二维码打印方法,包括:接收主机发送的成品标签的数据,成品标签的数据中包含钢卷的钢卷号;通过钢卷号生成钢卷的序列号;设定成品标签的数据和序列号在生成二维码图像时的排列参数;将待传输数据由第一编码模式转换为第二编码模式,待传输数据中包含排列参数;将转为第二编码模式的待传输数据发送至打印机,以使打印机通过排列参数打印二维码图像。也即实现了将主机所支持的数据格式转换为打印机所支持的数据格式,并且能够设定成品标签的数据和序列号在生成二维码图像时的排列参数,故而达到了能够将OS/390环境下基于EBCDIC编码的中文内容和中西文混合内容编译成二维矩阵,并转换为打印机可以识别的机器码的技术效果,因此实现了可以通过标签打印机打印出二维码图像的技术效果,并且,不需要对设备进行更换,故而具有降低成本的技术效果,并且二维码图像中的序列号对应钢卷的钢卷号,并且序列号是唯一号,故而既可以通过序列号查找出钢卷相关信息,又可以起到防伪的作用。
具体实施方式
本发明实施例提供一种基于主机平台的二维码打印方法及装置,以解决现有技术中有些大型主机无法将OS/390环境下基于EBCDIC编码的中文内容和中西文混合内容编译成二维矩阵,并转换为标签打印机可以识别的机器码的技术问题。
本申请实施例中的技术方案为解决上述的技术问题,总体思路如下:
提供了一种基于主机平台的二维码打印方法,包括:接收主机发送的成品标签的数据,成品标签的数据中包含钢卷的钢卷号;通过钢卷号生成钢卷的序列号;设定成品标签的数据和序列号在生成二维码图像时的排列参数;将待传输数据由第一编码模式转换为第二编码模式,待传输数据中包含排列参数;将转为第二编码模式的待传输数据发送至打印机,以使打印机通过排列参数打印二维码图像。也即实现了将主机所支持的数据格式转换为打印机所支持的数据格式,并且能够设定成品标签的数据和序列号在生成二维码图像时的排列参数,故而达到了能够将OS/390环境下基于EBCDIC编码的中文内容和中西文混合内容编译成二维矩阵,并转换为打印机可以识别的机器码的技术效果,因此实现了可以通过标签打印机打印出二维码图像的技术效果,并且,不需要对设备进行更换,故而具有降低成本的技术效果,并且二维码图像中的序列号对应钢卷的钢卷号,并且序列号是唯一号,故而既可以通过序列号查找出钢卷相关信息,又可以起到防伪的作用。
为了更好的理解上述技术方案,下面通过附图以及具体实施例对本发明技术方案做详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本发明技术方案的详细的说明,而不是对本发明技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互组合。
第一方面,本发明实施例提供一种基于主机平台的二维码打印方法,请参考图1,包括:
步骤S101:接收主机发送的成品标签的数据,成品标签的数据中包含钢卷的钢卷号;
步骤S102:通过钢卷号生成钢卷的序列号;
步骤S103:设定成品标签的数据和序列号在生成二维码图像时的排列参数;
步骤S104:将待传输数据由第一编码模式转换为第二编码模式,待传输数据中包含排列参数;
步骤S105:将转为第二编码模式的待传输数据发送至打印机,以使打印机通过排列参数打印二维码图像。
在具体实施过程中,请参考图2,为本发明的系统架构图,主要包括:主机;主干网;交接机;操作终端;二维码标签打印装置;标签打印机。
步骤S101中,在需要进行标签打印时,操作终端向主机发送打印申请命令,主机在接收到打印申请命令之后,将成品标签的数据生成一个通讯区变量,然后通过主干网、交换机发送到二维码标签打印装置。
进而,二维码标签打印装置可以接收到成品标签的数据,其中成品标签的数据中可以包含:钢卷号、规格、重量、生产日期、标签号、检验数据、检验员中的一条或多条数据。
在具体实施过程中,主机还可以将二维码图像的生成方式、二维码图像在标签上的显示大小、二维码图像在标签上的显示位置中的至少一种信息发送至二维码标签打印装置。
进而二维码标签打印装置接收主机发送的成品标签的数据的同时,方法还包括:接收主机发送的二维码图像的生成方式、二维码图像在标签上的显示大小、二维码图像在标签上的显示位置中的至少一种信息。
如图3所示,为二维码标签打印装置的功能模块示意图,二维码标签打印装置可以包含以下功能模块:数据接收模块;EBCDIC码转换模块;序列号生成模块;格式控制模块。步骤S101可以由图3所示的数据接收模块实现。
步骤S102中,可以首先从成品标签的数据中获取钢卷号,然后通过钢卷号生成一个唯一的编号,并且通过这个唯一的编号建立和钢卷号的映射关系,这个唯一的编号进而成为序列号,在后续这个序列号将被生成到二维码图像中,进而可以通过二维码图像方便用户跟踪产品的质量信息。
步骤S102可以由图3所示的序列号生成模块实现。
步骤S103中,排列参数例如如下:
#FT2780,48#BQN,2,6#FDdata#FS
#FT表示设置段位置,2780是x方向的点数,48是y方向的点数;
#BQN中的BQ表示条码为二维码,N表示正常方向,2是模型增强,6是放大倍数;
#FD表示后面是输入的字段数据,data即为二维码表示的数据;
#FS表示之前从#FD开始的字段数据的结束。
另外,对主机终端进行打印机设置,选取二维码专用的打印配置文件(即转码工具),设置写在PDF格式的文件中,例如对PRINTER_ID=40 70的打印机的定义文件里。
步骤S103可以由图3所示的格式控制模块实现。
步骤S104中,待传输数据可以仅仅包含排列参数;而在主机将二维码图像的生成方式、二维码图像在标签上的显示大小、二维码图像在标签上的显示位置中的至少一种信息发送至二维码标签打印装置的情况下,待传输数据除了包含排列参数之外,还可以包含二维码图像的生成方式、二维码图像在标签上的显示大小、二维码图像在标签上的显示位置中的至少一种信息。
另外,第一编码模式例如为:EBCDIC编码模式;第二编码模式例如为:ASCII编码模式。
在所有的平台,数据的底层都是由二进制来表示的,而不同的平台选择的字符集会不尽相同。在不同的字符集里面,同一个字符可能对应不同的二进制数据。
例如:如图4所示,EBCDIC字符集中字符‘A’的二进制编码为1100 0001(十六进制0XC1),表示的十进制为193;ASCII字符集中‘A’的二进制编码为0100 0001(十六进制0X41),表示的十进制为65。可以看出,EBCDIC中的0XC1和ASCII中的0X41是等价的,也就是说转码实际上是一种对应关系。
不同型号打印机对应的字符集不同,基于IBM平台,我们针对标签打印机ZPL专门制作了一个中西文字符集与EBCDIC字符集之间的转码模块,利用主机EBCDIC码与ASCII之间对应关系,对打印数据进行转码,并对打印机进行了编号,即为它分配了一个PRINTER_ID。因此可以通过这个编号找到该主机和该打印机之间的字符集转码关系。
由于通常打印机支持ASCII编码模式,故而在大型主机支持EBCDIC编码模式的情况下,将无法完成二维码图像的正确打印,故而需要对待传输数据进行编码模式的转换,以使打印机能够通过待传输数据进行二维码图像的打印。
步骤S104可以由图3所示的EBCDIC码转换模块实现。
步骤S105中,在将待传输数据发送至打印机之后,打印机就可以读取待传输数据,进而将二维码图像打印在标签上,如果待传输数据中不包含二维码图像的打印参数(也即:仅仅包含排列参数),则按照默认方式打印二维码图像;如果待传输数据中包含二维码图像的打印参数,则按照打印参数打印二维码图像。
第二方面,基于同一发明构思,本发明实施例提供一种基于主机平台的二维码打印装置,请参考图5,包括:
接收模块50,用于接收主机发送的成品标签的数据,成品标签的数据中包含钢卷的钢卷号;
生成模块51,用于通过钢卷号生成钢卷的序列号;
设定模块52,用于设定成品标签的数据和序列号在生成二维码图像时的排列参数;
转换模块53,用于将待传输数据由第一编码模式转换为第二编码模式,待传输数据中包含排列参数;
发送模块54,用于将转为第二编码模式的待传输数据发送至打印机,以使打印机通过排列参数打印二维码图像。
可选的,第一编码模式具体为:EBCDIC编码模式;第二编码模式具体为:ASCII编码模式。
可选的,接收模块50,还用于:
在接收主机发送的成品标签的数据的同时,接收主机发送的二维码图像的生成方式、二维码图像在标签上的显示大小、二维码图像在标签上的显示位置中的至少一种信息。
可选的,待传输数据中还包含:二维码图像的生成方式、二维码图像在标签上的显示大小、二维码图像在标签上的显示位置中的至少一种信息。
本发明一个或多个实施例,至少具有以下有益效果:
由于在本发明实施例中,提供了一种基于主机平台的二维码打印方法,包括:接收主机发送的成品标签的数据,成品标签的数据中包含钢卷的钢卷号;通过钢卷号生成钢卷的序列号;设定成品标签的数据和序列号在生成二维码图像时的排列参数;将待传输数据由第一编码模式转换为第二编码模式,待传输数据中包含排列参数;将转为第二编码模式的待传输数据发送至打印机,以使打印机通过排列参数打印二维码图像。也即实现了将主机所支持的数据格式转换为打印机所支持的数据格式,并且能够设定成品标签的数据和序列号在生成二维码图像时的排列参数,故而达到了能够将OS/390环境下基于EBCDIC编码的中文内容和中西文混合内容编译成二维矩阵,并转换为打印机可以识别的机器码的技术效果,因此实现了可以通过标签打印机打印出二维码图像的技术效果,并且,不需要对设备进行更换,故而具有降低成本的技术效果,并且二维码图像中的序列号对应钢卷的钢卷号,并且序列号是唯一号,故而既可以通过序列号查找出钢卷相关信息,又可以起到防伪的作用。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。