专利名称:一种在多联票据上打印异形矩阵式二维条码的方法
技术领域:
本发明涉及多联票据打印技术领域,特别是涉及一种在多联票据上打印异形矩阵式二维条码的方法。
背景技术:
利用纸质文件传递信息,是由打印机将信息符号打印到纸质文件上,这些信息符号包括汉字、数字、字母、标点符号、一维条码、二维条码等。这样,在根据纸质文件上的信息进行各种后续操作时,只需读取上面的信息符号即可。随着计算机图像处理技术的发展,越来越多的纸质文件改由计算机来阅读,这极大地减少了人工读取的工作量。多联票据作为一种纸质文件,可以承载各种销售信息,通过读取这些销售信息就可以进行报税、报销等操作。多联票据由第一联和一张以上的具有复写功能的其他个联构成(如一份三联票据由第一联、具有复写功能的第二联和第三联顺次连接而成)。其中,第 一联之外的其他个联由无碳复写纸制成,在各个联的上表面均涂有一层复写油墨,这些复写油墨会在受到外界压力的位置显影,从而在纸面的该位置留下痕迹,这就是多联票据第一联之外的其他个联的复写原理。这里,多联票据的第一联可以采用无碳复写纸,也可以不米用。为了提高防伪性能,并使面积一定的多联票据能保存更多的信息,同时方便计算机读取这些信息,可在多联票据的表面打印矩阵式二维条码。矩阵式二维条码由横纵两个方向上相同数量的模块构成,这里的模块分为黑色模块和白色模块两种,分别代表二进制的“O”和“I”。通常情况下,每个模块均为正方形,因而整个矩阵式二维条码也为正方形。但在多联票据的特殊应用环境中,还可以将各模块设置为长方形,这样整个矩阵式二维条码也就为长方形,称之为异形矩阵式二维条码。现有的打印技术是利用加热转印的原理将二维条码打印到纸面上的,除去第一联上因受热而显现了二维条码之外,其他个联上都因没有受到压力而不会显影出二维条码,这样就造成多联票据的第一联与其他个联的内容不同,而这种多联票据是不允许使用的。
发明内容
本发明所要解决的技术问题是提供一种在多联票据上打印异形矩阵式二维条码的方法,能将异形矩阵式二维条码正确地打印到多联票据的所有个联上。本发明解决上述技术问题的技术方案如下一种在多联票据上打印异形矩阵式二维条码的方法,所述多联票据由第一联和一张以上的具有复写功能的其他个联顺次连接而成;所述异形矩阵式二维条码由一个以上的模块组成,其参数满足打印机真实的打印分辨率的要求;其中,所述打印机为针式打印机,所述异形矩阵式二维条码的参数包括模块的尺寸、遵循的标准版本、纠错等级;其特征在于,该方法包括步骤I :将所述打印机的打印分辨率属性设置为等于其真实的打印分辨率;设置打印机采用不遗漏任一打印点的单向打印模式;
步骤2 :根据所述异形矩阵式二维条码的参数,将所述异形矩阵式二维条码中的每个模块解析为打印点与其打印位置之间的对应关系,并确定各模块解析成的打印点的打印顺序;步骤3 :按照所述打印点的打印顺序,所述打印机的打印针依次将各模块解析成的打印点单向无遗漏地打印到所述多联票据第一联表面上相应的打印位置处。本发明的有益效果是本发明中,由于异形矩阵式二维条码的参数满足了针式打印机真实的打印分辨率的要求,因而可根据异形矩阵式二维条码的参数,将各模块解析为打印点与其打印位置之间的对应关系,并确定各模块解析成的打印点的打印顺序,进而根据对打印机的打印分辨率属性、打印方向、是否遗漏打印点方面的设置,通过施加压力的方式将打印点单向无遗漏地打印到多联票据第一联表面上相应的打印位置处,使第一联表面显示正确的异形矩阵式二维条码,其他个联表面因受打印针的压力而显影出正确的异形矩阵式二维条码。在上述技术方案的基础上,本发明还可以做如下改进 进一步,所述打印机为9针式打印机或24针式打印机。进一步,所述步骤I中的单向打印模式为自上而下的单向打印模式;则所述步骤2中确定的各模块解析成的打印点的打印顺序为先打印位于所述异形矩阵式二维条码上部的模块解析成的打印点,后打印位于所述异形矩阵式二维条码下部的模块解析成的打印点。进一步,所述异形矩阵式二维条码由一个以上的黑色模块和一个以上的白色模块组成;则所述步骤2中将所述异形矩阵式二维条码中的每个模块解析为打印点与其打印位置之间的对应关系的方法为将所述异形矩阵式二维条码中的黑色模块解析为一个以上的打印点与其打印位置之间的对应关系,将所述异形矩阵式二维条码中的白色模块解析为在其打印位置处的O个打印点。进一步,所述异形矩阵式二维条码以图像文件的形式保存于计算机中;则所述步骤2中将所述异形矩阵式二维条码中的每个模块解析为打印点与其打印位置之间的对应关系的方法为计算机将表示所述图像文件中每个模块的比特串解析为打印点与其打印位置之间的对应关系。
图I为本发明提供的在多联票据上打印异形矩阵式二维条码的方法的流程图。
具体实施例方式以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。本发明中所述的多联票据由第一联和一张以上的具有复写功能的其他个联顺次连接而成,第一联之外的其他个联由无碳复写纸制成,在各个联的上表面均涂有一层复写油墨,这些复写油墨会在受到外界压力的位置显影,从而在纸面的该位置留下痕迹,第一联可以采用无碳复写纸,也可以不采用。多联票据包括第一联和其他个联在内的所有个联的制作材料均比较脆弱,如果打印点过于密集,例如将针式打印机的打印分辨率属性设置为超过其真实的打印分辨率,将对个联造成损坏,影响计算机对异性矩阵式二维条码以及其他信息的读取。本发明所述的异形矩阵式二维条码由横纵方向数量相同的一个以上的长方形的模块组成,各模块的长度方向相互平行,因而整个异形矩阵式二维条码也为长方形。该二维条码中的模块包括分别表示二进制“O”和“ I ”的黑色模块和白色模块,一个异形矩阵式二维条码所包含的模块数量越多,则其包含的信息量也就越大。为了后续处理时方便计算机的读取,每个模块的面积就必须足够大,否则可能造成计算机的误读。因此,在多联票据上该二维条码的覆盖面积受到限制的前提下,二维条码所能存储的信息量也是受到限制的。在目前的计算机图像处理技术条件下,多联票据上打印的这种横纵方向排列的黑色模块和白色模块构成的异形矩阵式二维条码可以存储约几百K比特的信息,相对于仅能存储几十比特信息的一维条码和几百比特信息的纵向堆叠起来的一维条码而言,本发明所打印的这种异形矩阵式二维条码的信息量要大得多。
本发明所述的异形矩阵式二维条码的参数需满足打印机真实的打印分辨率的要求,其中的打印机为针式打印机,异形矩阵式二维条码的参数包括模块的尺寸、遵循的标准版本、纠错等级。目前广泛应用的针式打印机多种多样,例如,可以为9针式打印机,也可以为24针式打印机。每种针式打印机具有唯一的真实的打印分辨率,例如9针式打印机真实的打印分辨率为120dpi X72dpi (dpi为每英寸距离内打印点的数量),且不同种类的针式打印机的真实的打印分辨率有所不同,具体数值可以参见该针式打印机的使用手册。本发明中,异形矩阵式二维条码的各模块是相同长度和相同宽度的长方形,且模块组合为异形矩阵式二维条码时,各模块的长度方向是平行的,因而宽度方向也是平行的,这样组成的异形矩阵式二维条码也是长方形。这里,异形矩阵式二维条码的参数所包括的模块的尺寸是指各模块的长度和宽度。由于异形矩阵式二维条码由横纵方向排列的多个模块组合而成,因而每一行的长度需与针式打印机在横向的真实打印分辨率相适应,每一列的宽度也必须与针式打印机在纵向的真实打印分辨率相适应,不能超越横纵方向真实的打印分辨率。由于不同针式打印机的真实的打印分辨率是不同的,因而针对不同针式打印机而言,同一异形矩阵式二维条码的各模块的尺寸是不同的。异形矩阵式二维条码的参数包括该二维条码所遵循的标准版本,这里的标准版本指的是构建该异形矩阵式二维条码所遵循的标准的版本,例如QR标准版本、PDF417标准版本以及国产标准版本等。遵循的标准版本不同,包含同一信息的异形矩阵式二维条码的形式也有所不同,每个模块横纵两方向所包含的打印点的数量可在7dpiX7dpi至200dpi X200dpi之间变化,位于异形矩阵式二维条码中心位置的校正曲线的形式和尺寸、分别位于异形矩阵式二维条码设定的直角处的位置探测图形的数量和形式、所有位置探测图形组合而成的寻像图形的形式也有所不同,这些都需要根据打印机真实的打印分辨率来确定,因此,异形矩阵式二维条码所遵循的标准的版本必须满足打印机真实的打印分辨率的要求,不能超越横纵方向真实的打印分辨率。另外,异形矩阵式二维条码的纠错等级也要满足打印机真实的打印分辨率的要求,这里的纠错等级包括纠错效果依次递增的L1、L2、L3和L4四种,例如,LI纠错等级对应着8%的错误可以被纠正,L2纠错等级对应着15%的错误可以被纠正。纠错等级必须与打印机的真实的打印分辨率相适应,以及时纠正错误,同时不因纠错速度太慢而影响打印或识别速度。图I为本发明提供的在多联票据上打印异形矩阵式二维条码的方法的流程图。如图I所示,该方法包括步骤101 :将打印机的打印分辨率属性设置为等于其真实的打印分辨率;设置打印机采用不遗漏任一打印点的单向打印模式。由于异形矩阵式二维条码的参数满足了打印机真实的打印分辨率的要求,本步骤将打印机的打印分辨率属性设置为等于其真实的打印分辨率,这样就协调了异形矩阵式二维条码和打印机的设置,保证了将模块解析为打印点与其打印位置的对应关系的准确性。另外,本发明将打印机的打印分辨率属性设置为其真实的打印分辨率,还可以保证打印点之间保持足够大的距离,防止损坏纸质较为脆弱的多联票据,这有利于防止计算机对二维条码的误读。例如,9针式打印机的打印分辨率属性可以有120dpiX72dpi、120dpi X 144dpi和240dpi X 144dpi三种设置值,即该打印机可以这三种打印分辨率来进 行打印,除了第一种为其真实的打印分辨率之外,另外两种是分别在纵向以及横纵两向上进行半点打印,即如果将一个打印点看作微观上的圆形打印面,则后一个打印点的圆心位于前一个打印点的边缘处,这样,相邻两个打印点的圆心之间的距离仅为一个打印点的半径,二者已完全连为一体,计算机是无法对二者进行分辨的。而将打印机的打印分辨率属性设置为其真实的打印分辨率,将使相邻打印点的圆心之间的距离不小于每个打印点的直径,从而使计算机对二者进行有效分辨。计算机读取异形矩阵式二维条码中的各个模块,是通过识别该模块打印位置处的打印点的方式进行的,因而打印点的数量和位置是否正确,关系到计算机识别模块的准确性,本发明设置打印机采用不遗漏任一打印点的打印模式,可以保证每个模块所对应的打印点的数量不会减少,从而保证计算机识别模块的准确性。同时,打印机采用单向打印模式,可使打印机一次性完成一行所有打印点的打印,而不是往返一次才完成一行所有打印点的打印,因而不会出现往返打印时打印点无法准确对齐的缺陷,保证了打印点位置的准确性,进而保证了计算机识别的准确性。步骤102 :根据异形矩阵式二维条码的参数,将异形矩阵式二维条码中的每个模块解析为打印点与其打印位置之间的对应关系,并确定各模块解析成的打印点的打印顺序。本步骤对异性矩阵式二维条码各模块的解析,是根据二维条码的参数来进行的,这里的参数即包括上述的模块的尺寸、遵循的标准版本、纠错等级,该步骤是与异性矩阵式二维条码的构建相适应,防止发生二维条码的构建与解析之间的错位,从而正确地解析已构建的异形矩阵式二维条码。本发明中的针式打印机在多联票据上打印异形矩阵式二维条码,必须先将二维条码的各模块进行解析,确定出每个模块所对应的打印点的数量以及各打印点的位置,即各模块的打印点与其打印位置之间的对应关系,进而还要确定各模块解析成的打印点的打印顺序,这里的打印顺序既包括不同模块所对应的打印点之间的打印顺序,还包括同一模块所对应的多个打印点之间的打印顺序。这里的打印顺序的确定,还要参照步骤101所述的单向打印的模式,例如,步骤IOI中的单向打印模式为自上而下的单向打印模式,即从异形矩阵式二维条码的上部向下部打印,则本步骤确定的各模块解析成的打印点的打印顺序为先打印位于异形矩阵式二维条码上部的模块解析成的打印点,后打印位于异形矩阵式二维条码下部的模块解析成的打印点,另外,对于同一模块对应的多个打印点而言,也应为从位于上部的打印点向位于下部的打印点实施打印。步骤103 :按照打印点的打印顺序,打印机的打印针依次将各模块解析成的打印点单向无遗漏地打印到多联票据第一联表面上相应的打印位置处。在步骤101的设置以及步骤102的解析工作的基础上,本步骤在多联票据的第一联上通过打印针施加压力的方式来实施打印,同时利用所施加的压力在其他个联上与第一联相同的位置处实现异形矩阵式二维条码的显影。由此可见,本发明中,由于异形矩阵式二维条码的参数满足了针式 打印机真实的打印分辨率的要求,因而可根据异形矩阵式二维条码的参数,将各模块解析为打印点与其打印位置之间的对应关系,并确定各模块解析成的打印点的打印顺序,进而根据对打印机的打印分辨率属性、打印方向、是否遗漏打印点方面的设置,通过施加压力的方式将打印点单向无遗漏地打印到多联票据第一联表面上相应的打印位置处,使第一联表面显示正确的异形矩阵式二维条码,其他个联表面因受打印针的压力而显影出正确的异形矩阵式二维条码。由于异形矩阵式二维条码由一个以上的黑色模块和一个以上的白色模块组成,每个黑色模块代表一个二进制“0”,每个白色模块代表一个二进制“1”,则步骤102中将异形矩阵式二维条码中的每个模块解析为打印点与其打印位置之间的对应关系的方法为将异形矩阵式二维条码中的黑色模块解析为一个以上的打印点与其打印位置之间的对应关系,将异形矩阵式二维条码中的白色模块解析为在其打印位置处的O个打印点,即白色模块是不对应打印点的,其所对应的打印位置完全空白。如果异形矩阵式二维条码以图像文件(如JPG、TIFF等形式的图像文件)的形式保存于计算机中,即该异形矩阵式二维条码中的每个模块均以比特串的形式存储于计算机中;则步骤102中将异形矩阵式二维条码中的每个模块解析为打印点与其打印位置之间的对应关系的方法为计算机将表示该图像文件中每个模块的比特串解析为打印点与其打印位置之间的对应关系。由此可见,本发明具有以下优点(I)本发明中,由于异形矩阵式二维条码的参数满足了针式打印机真实的打印分辨率的要求,因而可根据异形矩阵式二维条码的参数,将各模块解析为打印点与其打印位置之间的对应关系,并确定各模块解析成的打印点的打印顺序,进而根据对打印机的打印分辨率属性、打印方向、是否遗漏打印点方面的设置,通过施加压力的方式将打印点单向无遗漏地打印到多联票据第一联表面上相应的打印位置处,使第一联表面显示正确的异形矩阵式二维条码,其他个联表面因受打印针的压力而显影出正确的异形矩阵式二维条码。(2)本发明中,由于异形矩阵式二维条码的参数满足了打印机真实的打印分辨率的要求,并将打印机的打印分辨率属性设置为等于其真实的打印分辨率,这样就协调了异形矩阵式二维条码和打印机的设置,保证了将模块解析为打印点与其打印位置的对应关系的准确性。(3)本发明将打印机的打印分辨率属性设置为其真实的打印分辨率,还可以保证打印点之间保持足够大的距离,防止损坏纸质较为脆弱的多联票据。(4)本发明设置打印机采用不遗漏任一打印点的打印模式,可以保证每个模块所对应的打印点的数量不会减少,从而保证计算机识别模块的准确性。同时,打印机采用单向打印模式,可使打印机一次性完成一行所有打印点的打印,而不是往返一次才完成一行所有打印点的打印,因而不会出现往返打印时打印点无法准确对齐的缺陷,保证了打印点位置的准确性,进而保证了计算机识别的准确性。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。·
权利要求
1.一种在多联票据上打印异形矩阵式二维条码的方法,所述多联票据由第一联和一张以上的具有复写功能的其他个联顺次连接而成;所述异形矩阵式二维条码由一个以上的模块组成,其参数满足打印机真实的打印分辨率的要求;其中,所述打印机为针式打印机,所述异形矩阵式二维条码的参数包括模块的尺寸、遵循的标准版本、纠错等级;其特征在于,该方法包括 步骤I:将所述打印机的打印分辨率属性设置为等于其真实的打印分辨率;设置打印机采用不遗漏任一打印点的单向打印模式; 步骤2:根据所述异形矩阵式二维条码的参数,将所述异形矩阵式二维条码中的每个模块解析为打印点与其打印位置之间的对应关系,并确定各模块解析成的打印点的打印顺序; 步骤3 :按照所述打印点的打印顺序,所述打印机的打印针依次将各模块解析成的打印点单向无遗漏地打印到所述多联票据第一联表面上相应的打印位置处。
2.根据权利要求I所述的方法,其特征在于,所述打印机为9针式打印机或24针式打印机。
3.根据权利要求I所述的方法,其特征在于,所述步骤I中的单向打印模式为自上而下的单向打印模式;则所述步骤2中确定的各模块解析成的打印点的打印顺序为先打印位于所述异形矩阵式二维条码上部的模块解析成的打印点,后打印位于所述异形矩阵式二维条码下部的模块解析成的打印点。
4.根据权利要求I所述的方法,其特征在于,所述异形矩阵式二维条码由一个以上的黑色模块和一个以上的白色模块组成;则所述步骤2中将所述异形矩阵式二维条码中的每个模块解析为打印点与其打印位置之间的对应关系的方法为将所述异形矩阵式二维条码中的黑色模块解析为一个以上的打印点与其打印位置之间的对应关系,将所述异形矩阵式二维条码中的白色模块解析为在其打印位置处的O个打印点。
5.根据权利要求1-4所述的方法,其特征在于,所述异形矩阵式二维条码以图像文件的形式保存于计算机中;则所述步骤2中将所述异形矩阵式二维条码中的每个模块解析为打印点与其打印位置之间的对应关系的方法为计算机将表示所述图像文件中每个模块的比特串解析为打印点与其打印位置之间的对应关系。
全文摘要
本发明涉及一种在多联票据上打印异形矩阵式二维条码的方法。该方法包括步骤1将所述打印机的打印分辨率属性设置为等于其真实的打印分辨率;设置打印机采用不遗漏任一打印点的单向打印模式;步骤2根据所述异形矩阵式二维条码的参数,将所述异形矩阵式二维条码中的每个模块解析为打印点与其打印位置之间的对应关系,并确定各模块解析成的打印点的打印顺序;步骤3按照所述打印点的打印顺序,所述打印机的打印针依次将各模块解析成的打印点单向无遗漏地打印到所述多联票据第一联表面上相应的打印位置处。本发明能将异形矩阵式二维条码正确地打印到多联票据的所有个联上。
文档编号B41M3/00GK102806788SQ20111014
公开日2012年12月5日 申请日期2011年6月2日 优先权日2011年6月2日
发明者陈江宁, 甘景全, 偶瑞军, 谢宇, 李少维, 李利, 宋颍 申请人:航天信息股份有限公司