引言
在某些行業(yè)的信息系統(tǒng)中,針式打印機(jī)仍然被廣泛使用,主要是因?yàn)獒樖酱蛴C(jī)能夠一次打印多聯(lián)紙張。有的業(yè)務(wù)為了實(shí)現(xiàn)機(jī)讀或是增加內(nèi)容的需要,使用二維條碼。使用二維條碼的好處是既能實(shí)現(xiàn)條碼槍機(jī)讀,又能在相同的面積下包含比直接打印字符更多的內(nèi)容,不過(guò)在針式打印機(jī)無(wú)法被條碼專用打印機(jī)取代的情況下直接使用針式打印機(jī)打印二維條碼,會(huì)出現(xiàn)打印誤差大導(dǎo)致識(shí)別率低、打印點(diǎn)密集導(dǎo)致紙張破損等問(wèn)題。增大二維條碼模塊尺寸能改善識(shí)別率,卻導(dǎo)致容量下降,失去容量?jī)?yōu)勢(shì),這些問(wèn)題導(dǎo)致使用針式打印機(jī)的系統(tǒng)一直無(wú)法使用二維條碼來(lái)提高性能。
1 二維條碼的特點(diǎn)
在水平和垂直方向的三維空間存儲(chǔ)信息的條碼,稱為二維條碼。早期出現(xiàn)的二維條碼屬于線性堆疊式,就是把多個(gè)一維條碼在縱向堆疊,這類二維條碼比較典型的是PDF417碼,如圖1 所示。
PDF417 條碼是由美國(guó)SYMBOL 公司發(fā)明的, PDF(Portable Data File) 意思是"便攜數(shù)據(jù)文件"。組成條碼的每一個(gè)條碼字符由4 個(gè)條和4 個(gè)空共17 個(gè)模塊構(gòu)成,故稱為PDF417 條碼。PDF417 條碼可表示數(shù)字、字母或二進(jìn)制數(shù)據(jù),也可表示漢字。一個(gè)PDF417 條碼最多可容納1850 個(gè)字符或1108 B 的二進(jìn)制數(shù)據(jù),如果只表示數(shù)字則可容納2710 個(gè)數(shù)字。PDF417 的糾錯(cuò)能力分為9 級(jí),級(jí)別越高,糾正能力越強(qiáng)。由于這種糾錯(cuò)功能,使得污損的417 條碼也可以正確讀出。我國(guó)目前己制定了PDF417 碼的國(guó)家標(biāo)準(zhǔn),標(biāo)準(zhǔn)號(hào)是GB/T 17172-1997。PDF417 條碼需要有417 解碼功能的條碼閱讀器才能識(shí)別。PDF417 條碼最大的優(yōu)勢(shì)在于其龐大的數(shù)據(jù)容量和極強(qiáng)的糾錯(cuò)能力。當(dāng)PDF417 條碼用于防偽時(shí),并不是PDF417 條碼不能被復(fù)制,而是由于使用PDF417 條碼可以將大量的數(shù)據(jù)快速讀入計(jì)算機(jī),使得大規(guī)模的防偽檢驗(yàn)成為可能。
圖1 PDF417 碼圖
后來(lái)出現(xiàn)了矩陣式二維條碼,矩陣式二維條碼在一個(gè)矩陣空間內(nèi)通過(guò)黑白模塊的不同分布進(jìn)行編碼,比較典型的是QR Code 碼,如圖2 所示。
QR Code 碼是由日本Denso 公司于1994 年9 月研制的一種矩陣二維碼符號(hào),它除具有一維條碼及其他二維條碼所具有的信息容量大、可靠性高、可表示漢字及圖像多種文字信息、保密防偽性強(qiáng)等優(yōu)點(diǎn)外,還具有如下主要特點(diǎn)。
1)超高速識(shí)讀。從QR Code 碼的英文名稱QuickResponse Code 可以看出,超高速識(shí)讀特點(diǎn)是QR Code 碼區(qū)別于417 條碼、Data Matrix 等二維碼的主要特性。由于在用電荷搞合元件(Charge-Coupled Device, CCD )識(shí)讀QR Code 碼時(shí),整個(gè)QR Code 碼符號(hào)中信息的讀取是通過(guò)QR Code 碼符號(hào)的位置探測(cè)圖形,用硬件來(lái)實(shí)現(xiàn),因此,信息識(shí)讀過(guò)程所需時(shí)間很短,具有超高速識(shí)讀特點(diǎn)。用CCD 二維條碼識(shí)讀設(shè)備,每秒可識(shí)讀30 個(gè)含有1∞個(gè)字符的QR Code 碼符號(hào);對(duì)于含有相同數(shù)據(jù)信息的417 條碼符號(hào),每秒僅能識(shí)讀3 個(gè)符號(hào)。QR Code 碼的超高速識(shí)讀特性是它能夠廣泛應(yīng)用于工業(yè)自動(dòng)化生產(chǎn)線管理等領(lǐng)域。
圖2 QR Code 碼圖
2) 全方位識(shí)讀。QR Code 碼具有全方位(360度) 識(shí)讀特點(diǎn),這是QR Code 碼優(yōu)于行排式二維條碼如417 條碼的另一主要特點(diǎn),由于417 條碼是將一維條碼符號(hào)在行排高度上的截短來(lái)實(shí)現(xiàn)的,因此,它很難實(shí)現(xiàn)全方位識(shí)讀,其識(shí)讀方位角僅為士100 。
3) 能夠有效地表示中國(guó)漢字、日本漢字。由于QR Code碼用特定的數(shù)據(jù)壓縮模式表示中國(guó)漢字和日本漢字,它僅用13b可表示一個(gè)漢字;而417 條碼、Data Martix 等二維碼沒(méi)有特定的漢字表示模式,因此僅用字節(jié)表示模式來(lái)表示漢字,在用字節(jié)模式表示漢字時(shí),需用16 b( 兩個(gè)字節(jié))表示一個(gè)漢字。因此QR Code 碼比其他的二維條碼表示漢字的效率提高了20%。
QR Code 的編碼字符集包括:
1)數(shù)字型數(shù)據(jù)(數(shù)字0-9) ;
2) 字母數(shù)字型數(shù)據(jù)(數(shù)字0-9; 大寫(xiě)字母A-Z;9 個(gè)其他字符:space ,$,%,*,+, ,1 ,:);
3)8 b 字節(jié)型數(shù)據(jù);
4) 日本漢字字符;
5 中國(guó)扭字字符(GB 2312 對(duì)應(yīng)的漢字和非漢字字符)。
QR Code 碼數(shù)據(jù)表示方法為深色,模塊表示二進(jìn)制"1" ,淺色模塊表示二進(jìn)制0,通過(guò)掩膜,可以使符號(hào)中深色與淺色模塊的比例接近1: 1 ,使因相鄰模塊的排列造成譯碼困難的可能性降為最小。QR Code 碼分為40 個(gè)版本,從版本1 到版本40 ,版本l 是21 x21 模塊,版本40 是177 x 177 模塊,相鄰的兩個(gè)版本規(guī)格,高版本比低版本每邊多4 個(gè)模塊。QR Code碼糾錯(cuò)能力分四個(gè)級(jí)別:分別是L 為7% 、M 為15% 、Q 為25% 、H 為30% 。關(guān)于QR Code 碼符號(hào)結(jié)構(gòu),每個(gè)QRCode 碼符號(hào)都是由正方形模塊組成的一個(gè)正方形陣列,它由編碼區(qū)域和功能圖形組成。功能圖形包括:尋像圖形、分隔圖形、定位圖形和校正圖形。QR Code 碼編碼過(guò)程的七個(gè)步驟為:數(shù)據(jù)分析、數(shù)據(jù)編碼、糾錯(cuò)編碼、構(gòu)造最終信息、在矩陣中布置模塊、掩膜、添加格式和版本信息。QR Code 碼譯碼過(guò)程分為8 個(gè)步驟,如下:
1)定位并獲取符號(hào)圖像,深色淺色模塊識(shí)別為0 、1 組成的陣列;
2) 識(shí)讀格式信息:
3) 識(shí)讀版本信息;
4) 消除掩膜;
5) 恢復(fù)數(shù)據(jù)和糾錯(cuò)碼字;
6) 查錯(cuò)、糾錯(cuò);
7) 按照模式指示符和字符計(jì)數(shù)指示符拆分、組合碼字:
8) 根據(jù)模式譯碼,輸出結(jié)果。
本文中討論的二維條碼主要指短陣式二維條碼。二維條碼有時(shí)也叫做二維條碼符號(hào)或是二維條碼圖像,每個(gè)矩陣式二維條碼的符號(hào)包含的最小單元是模塊,二維條碼符號(hào)都由若干模塊組成,因?yàn)槭钦叫,所以水平和垂直方向的模塊數(shù)是相同的,包含的模塊數(shù)越多,符號(hào)的面積就越大,信息容量也越大。二維條碼的標(biāo)準(zhǔn)里面對(duì)模塊的絕對(duì)尺寸并不限制,只要打印和識(shí)別設(shè)備分辨率配套就可以,標(biāo)準(zhǔn)強(qiáng)調(diào)的是模塊尺寸和由模塊排列組合形成的二維條碼點(diǎn)陣的相對(duì)尺寸和位置關(guān)系。例如圖2 中QR Code 碼圖的左上角、右上角、左下角三個(gè)位置的方框形特征的圖被稱之為位置探測(cè)圖形,每個(gè)位置探測(cè)圖形可以看做是由3 個(gè)重疊的同心正方形組成,它們分別為7 x7 個(gè)深色模塊、5 x5 個(gè)淺色模塊和3 x3 個(gè)深色模塊。如固3 所示,位置探測(cè)圖形的模塊寬度比為1: 1: 3: 1: 1 。在同一個(gè)二維條碼符號(hào)中,任何組成部分都使用完全相同尺寸的模塊拼接而成。
圖3 位置探測(cè)圖形模塊分布
二維條碼一般使用專用的條碼打印機(jī)打印,使用條碼槍閱讀。常用的二維條碼我國(guó)都有相應(yīng)的國(guó)家標(biāo)準(zhǔn), QR Code碼全稱叫做快速響應(yīng)矩陣碼,國(guó)家標(biāo)準(zhǔn)是GB/T 18284-2∞0。還有一種矩陣式二維條碼名稱叫做江信碼,是由中國(guó)物品編碼中心組織研發(fā)的國(guó)家"十五"重大科技專項(xiàng),國(guó)家標(biāo)準(zhǔn)是GB/T 21049-2007 。漢信碼按符號(hào)的規(guī)模分了84 個(gè)版本,從版本1 到84 ,與其他二維條碼相比較,在壓縮比率和漢字字庫(kù)支持能力方面有優(yōu)勢(shì),漢信碼支持GB18030 字庫(kù)。
2 針式打印機(jī)的特點(diǎn)
針式打印機(jī)包括打印頭、色帶盒和色帶擋片。打印頭由被稱為針的金屬棍組成,或者9 針(如9 針打印機(jī))或者24 針(如M 針打印機(jī))。9 針打印頭具有一排垂直針,而24 針打印頭有兩排交錯(cuò)的針,每排12 根。如圖4 所示,方向是從打印頭背面向打印紙看過(guò)去。
針式打印機(jī)在打印時(shí)打印機(jī)控制電路通過(guò)控制線圈脈沖產(chǎn)生磁場(chǎng)推動(dòng)打印針動(dòng)作,打印針擊打色帶,在打印紙上打印出一個(gè)點(diǎn)。針式打印頭由于固有的機(jī)械特性,使得使用針式打印機(jī)在打印點(diǎn)陣符號(hào)時(shí),不能隨意打印任意尺寸,只能根據(jù)針的尺寸選擇符合的尺寸,針式打印機(jī)的分辨率特點(diǎn)如表1所示。
從上述特性能夠看出,24 針打印機(jī)可以打印標(biāo)準(zhǔn)矩形二維碼符號(hào),9針無(wú)法打印,除非專門(mén)設(shè)計(jì),因?yàn)?針不支持橫向和縱向都相同的分辨率。所以使用針式打印機(jī)打印二維條碼的話,只能選擇使用24 針的180 x 180 dpi ,其他分辨率都不行,如果要支持的話開(kāi)發(fā)工作量和成本將是24 針180 x180 dpi方式的2 -3 倍。
圖4 針式打印機(jī)分辨率
表1 針式打印機(jī)分辨率
3 針打二維條碼
在使用針式打印機(jī)打印二維條碼時(shí),工程師首先想到的是利用現(xiàn)有的條碼生成軟件輸人待編碼的數(shù)據(jù)后,生成一個(gè)二維條碼圖片,然后使用針式打印機(jī)打印輸出。實(shí)際實(shí)驗(yàn)后發(fā)現(xiàn),打印在紙張上的二維條碼在識(shí)別時(shí)的成功率并不高,并且紙張有被打破的現(xiàn)象。分析原因后發(fā)現(xiàn),現(xiàn)有的條碼生成軟件主要是針對(duì)條碼專用打印機(jī)設(shè)計(jì)的,在二維條碼符號(hào)的模塊尺寸定義上依據(jù)的是條碼專用打印機(jī)的分辨率,一般情況下,二維條碼專用打印機(jī)的分辨率是200 dpi , 4 x4 個(gè)打印點(diǎn)組成一個(gè)二維條碼符號(hào)的模塊,點(diǎn)和點(diǎn)之間無(wú)縫連接。按這樣的指標(biāo)構(gòu)建的二維條碼符號(hào),在使用針式打印機(jī)打印時(shí)會(huì)發(fā)生什么現(xiàn)象呢?以M 針打印機(jī)為例,分辨率是180 x180 dpi ,打印頭的針和針之間有間隙,在打印200 dpi 分辨率的、點(diǎn)和點(diǎn)之間沒(méi)有間隙的圖像時(shí),針式打印機(jī)會(huì)自動(dòng)啟動(dòng)一種半點(diǎn)移動(dòng)的打印處理方法,就是在同一個(gè)方向上,后面打印的一個(gè)點(diǎn)壓前面打印的一個(gè)點(diǎn)的半個(gè),以此類推,當(dāng)打完一個(gè)完整的二維條碼符號(hào)時(shí),可想而知,紙會(huì)變成什么樣子,同樣的一個(gè)位置,最多會(huì)遭到針的三次敲擊,聯(lián)次越多,第一聯(lián)紙受力就越大,破損也就越厲害。即使如此,紙的破損先不討論,僅由分辨率和打印頭的不同所帶來(lái)的尺寸誤差,反映在打印出來(lái)的二維條碼符號(hào)上,就使得原來(lái)生成的二維條碼符號(hào),在打印這個(gè)環(huán)節(jié),引入了不小的誤差。尺寸的誤差加上紙破損帶來(lái)的變形,二者疊加,使得大部分打印出來(lái)的二維條碼都無(wú)法識(shí)別。
針對(duì)這些原因,工程師又嘗試通過(guò)修改生成軟件的參數(shù),將模塊的尺寸調(diào)大,使用3 x3、4 x4 或是更多的點(diǎn)來(lái)構(gòu)建一個(gè)模塊,這樣生成的二維條碼符號(hào)面積很大,倒是可以識(shí)別了,打印機(jī)也不會(huì)半點(diǎn)移動(dòng)了,但受紙張面積限制,當(dāng)總面積還是原來(lái)那么大時(shí),二維條碼里面能包含的內(nèi)容卻變得極少了,比在同樣面積上直接打印字符多不了多少,沒(méi)什么使用價(jià)值,發(fā)揮不了二維條碼的優(yōu)勢(shì)。分析原因發(fā)現(xiàn),雖然模塊的尺寸放大了,但是因?yàn)槭鞘褂玫默F(xiàn)有的條碼生成軟件,那么其最基本的分辨率尺寸依然是依據(jù)條碼打印機(jī),這樣在增大模塊尺寸時(shí),翻轉(zhuǎn)的也是這個(gè)分辨率的倍數(shù),使用針式打印機(jī)打印時(shí),雖然因?yàn)槟K做大解決了不能識(shí)別和紙張破損的問(wèn)題,但因?yàn)槿狈_的針對(duì)針式打印機(jī)的計(jì)算,使得沒(méi)有把針式打印機(jī)的分辨率發(fā)揮到最佳,浪費(fèi)了不少打印尺寸和空間,最終造成這種打印方式打印出的二維條碼信息容量低,失去實(shí)用價(jià)值。
綜合前面兩方面的改進(jìn)辦法,實(shí)施起來(lái)互相矛盾,解決一個(gè)問(wèn)題的同時(shí)又會(huì)產(chǎn)生另外一個(gè)問(wèn)題,這樣綜合考慮,仍然不具備實(shí)用性。從根本上分析,要想使用針式打印機(jī)打印二維條碼,還得在根本上從最初的二維條碼符號(hào)生成階段就依據(jù)針式打印機(jī)的尺寸和結(jié)構(gòu)特點(diǎn)來(lái)設(shè)計(jì)二維條碼圖像,只有這樣,才能最大限度上保證針式打印機(jī)在打印二維條碼固像時(shí)不會(huì)破壞二維條碼符號(hào)的尺寸設(shè)計(jì)。
在依據(jù)針式打印機(jī)設(shè)計(jì)和打印二維條碼符號(hào)方面,有的工程師提出過(guò)這樣一種方案,思路是二維條碼的模塊尺寸按照1/180 in(1in = 25.4 mm) 的倍數(shù)設(shè)計(jì),對(duì)于9 針針式打印機(jī)按照1/180 in 的5 的倍數(shù)設(shè)計(jì),打印時(shí)橫向出針打印第一個(gè)位點(diǎn)后,打印第二個(gè)位點(diǎn)的中心到第一個(gè)位點(diǎn)的中心的距離是1/180 in ,縱向打印第二個(gè)位點(diǎn)到第一個(gè)位點(diǎn)的中心距離是1/180 in ,以打印第一個(gè)位點(diǎn)的中心為0 點(diǎn),在其橫向5 x 1/180 in的距離打印第三個(gè)位點(diǎn),打印第四個(gè)位點(diǎn)的中心到第三個(gè)位點(diǎn)中心的距離是1/180 in ,以打印第一個(gè)位點(diǎn)的中心為O 點(diǎn),在其縱向5 x 1/180 in 的距離打印第三個(gè)位點(diǎn),打印第四個(gè)位點(diǎn)的中心到第三個(gè)位點(diǎn)中心的距離是1/180 in ,每一個(gè)模塊由2x2 個(gè)位點(diǎn)組成,以此類推,組成一個(gè)矩陣式的二維條碼符號(hào)。
對(duì)于24 針針式打印機(jī)按照1/180 in 的5的倍數(shù)設(shè)計(jì),打印時(shí)橫向出針打印第一個(gè)位點(diǎn)后,打印第二個(gè)位點(diǎn)的中心到第一個(gè)位點(diǎn)的中心的距離是1/180 in ,打印第三個(gè)位點(diǎn)的中心到第二個(gè)位點(diǎn)的中心的距離是1/180 in ,縱向出針打印第二個(gè)位點(diǎn)到第一個(gè)位點(diǎn)的中心距離是1/180 in,打印第三個(gè)位點(diǎn)的中心到第二個(gè)位點(diǎn)的中心的距離是1/180 in ,以打印第一個(gè)位點(diǎn)的中心為0 點(diǎn),在其橫向5 x1/180 in的距離打印第四個(gè)位點(diǎn),打印第五個(gè)位點(diǎn)的中心到第四個(gè)位點(diǎn)中心的距離是1/180 in ,打印第六個(gè)位點(diǎn)的中心到第五個(gè)位點(diǎn)中心的距離是1/180 in ,以打印第一個(gè)位點(diǎn)的中心為0 點(diǎn),在其縱向5 x 1/180 Ïn 的距離打印第四個(gè)位點(diǎn),打印第五個(gè)位點(diǎn)的中心到第四個(gè)位點(diǎn)中心的距離是1/180 in ,打印第六個(gè)位點(diǎn)的中心到第五個(gè)位點(diǎn)中心的距離是1/180 in ,每一個(gè)模塊由3 x3 個(gè)位點(diǎn)組成,以此類推,組成一個(gè)矩陣式的二維條碼符號(hào)。這樣的改進(jìn)思路,簡(jiǎn)而言之就是二維條碼的模塊尺寸按照180 dpi的尺寸來(lái)設(shè)計(jì),用5 x5 個(gè)點(diǎn)來(lái)柑建一個(gè)模塊,打印時(shí)根據(jù)打印機(jī)不同實(shí)際打印其中的2 x2 或是3 x3個(gè)點(diǎn),空出余下的點(diǎn)。這樣的思路能保證打印效果良好能識(shí)別,但是因?yàn)槊總(gè)模塊尺寸太大,當(dāng)總面積相對(duì)固定時(shí),二維碼的信息容量太小;同時(shí)雖然因?yàn)橛锌拯c(diǎn),紙張不會(huì)打得很爛,有改善,但因?yàn)辄c(diǎn)和點(diǎn)存在重疊和相鄰,紙張還是會(huì)有一定程度的破壞,如果需要長(zhǎng)期保存的話,還是會(huì)隨著時(shí)間的推移發(fā)生變化而導(dǎo)致不能識(shí)別。
通過(guò)前面的分析介紹,對(duì)二維條碼使用針式打印機(jī)打印的特點(diǎn)有了一定的認(rèn)識(shí),概括存在的問(wèn)題,大概有以下幾點(diǎn)。首先,由于表示"1" 的模塊都需要密集地打印2 x2 或者3 x3 個(gè)點(diǎn),因此在打印過(guò)程中,紙張容易被打穿的幾率較高,致使紙張上的信息無(wú)法被識(shí)別的幾率較高。
其次,由于現(xiàn)有的打印方法為了便于識(shí)別,需要留有大量的空白,如需要5 x5 個(gè)點(diǎn)表示一個(gè)模塊,其中9 針打印機(jī)只使用了其中的4 個(gè)點(diǎn)打印有效信息而浪費(fèi)掉21 個(gè)點(diǎn), 24 針打印機(jī)只需要9 個(gè)點(diǎn)打印有效信息而、浪費(fèi)掉16 個(gè)點(diǎn),因此浪費(fèi)了大量的空間以便區(qū)分各個(gè)模塊,這樣大量的空白減少了在同等打印面積下二維條碼的容量,無(wú)法在數(shù)據(jù)量大而打印面積有限的情況下使用。
通過(guò)分析,提出這樣一種設(shè)計(jì)思路,使用四個(gè)打印點(diǎn)表示一個(gè)模塊,掏建矩陣式二維條碼,其中四個(gè)打印點(diǎn)相互間隔一個(gè)打印點(diǎn)。通過(guò)使用間隔的方式打印表示二進(jìn)制邏輯"1" 的矩陣式二維條碼模塊,可以有效地避免在使用針式打印機(jī)進(jìn)行二維條碼打印時(shí)出現(xiàn)紙張被打爛的情況,使得其能用于大量的多聯(lián)紙張二維條碼應(yīng)用,同時(shí)提高了單位面積的信息容量,克服了現(xiàn)有技術(shù)中的問(wèn)題。通過(guò)四個(gè)點(diǎn)表示一個(gè)"1" 模塊,由于每個(gè)打印點(diǎn)之間有足夠的空隙,完全避免了紙張?jiān)诖蛴∵^(guò)程中被打穿的情況,而分散的四個(gè)打印點(diǎn)形成一個(gè)較大的識(shí)別區(qū)域,也較容易識(shí)別。
從二維條碼的特點(diǎn)上說(shuō),生成、打印、識(shí)讀是三位一體配套的,同一個(gè)廠家的配套設(shè)備配合是最好的,不同廠家交叉的話,會(huì)有一些異常情況出現(xiàn)。專用的條碼打印機(jī),一般是每毫米8 個(gè)點(diǎn)的分辨率,在打印二維條碼時(shí)一般采取打印3 x3 或4x4 個(gè)點(diǎn)的方式來(lái)湊成一個(gè)模塊,這種模塊的尺寸是邊長(zhǎng)0.5mm或0.6 阻。而針式打印機(jī)的特點(diǎn)是每毫米3 個(gè)點(diǎn),點(diǎn)的尺寸是0.3 陽(yáng),一個(gè)點(diǎn)不夠, 3 個(gè)或4 個(gè)點(diǎn)又太大,所以針打在打印適合專用條碼打印機(jī)打印的二維條碼符號(hào)時(shí),在打印環(huán)節(jié)就已經(jīng)造成了不小的誤差;同時(shí)為了對(duì)圖形,針式打印機(jī)的驅(qū)動(dòng)程序利用打印頭位移的辦法密集打印,使得紙張變形得很厲害,不利于保存。
從針式打印機(jī)的特點(diǎn)出發(fā),不管是漢信碼或是QR Code碼,還可以用針的直徑也就是0.3 皿對(duì)應(yīng)的一個(gè)點(diǎn)做一個(gè)模塊,為了精確識(shí)別,一般會(huì)用4 倍以上的分辨率讀圖,相當(dāng)于掃描儀設(shè)置為300 dpi 或者用50 萬(wàn)像素?cái)z像頭拍符號(hào),這樣一個(gè)針點(diǎn)會(huì)得到4 x4 的數(shù)據(jù)矩陣作分析。從設(shè)計(jì)開(kāi)發(fā)的角度講,按照二維條碼生成、打印、識(shí)別三個(gè)環(huán)節(jié)來(lái)分別開(kāi)展的話,可以分成3 個(gè)步驟。
1)把數(shù)據(jù)編碼,生成一個(gè)以針打的、針直徑為模塊尺寸的二維條碼符號(hào)圖形。這個(gè)圖形同時(shí)也包含了針式打印機(jī)打印時(shí)所需要的內(nèi)容數(shù)據(jù)包,對(duì)于針式打印機(jī)來(lái)說(shuō),重用的是這個(gè)數(shù)據(jù)包,圖形只是用來(lái)看的,數(shù)據(jù)包可以自己定義一個(gè)結(jié)掏,也可以在打印時(shí)從固里面提取。
2) 把數(shù)據(jù)包使用針式打印機(jī)的打點(diǎn)陣命令,按照針式打印機(jī)的特點(diǎn)在固定的行、列坐標(biāo)上打印出來(lái),形成一個(gè)點(diǎn)陣,模塊排列整齊并且有間隙,對(duì)紙張的影響和原來(lái)打文字一樣,不會(huì)有破壞。
3) 按合適的分辨率獲取二維條碼圖像,再按照排列的尺寸坐標(biāo)獲取分析數(shù)據(jù),然后按約定的解碼算法解碼。
4 結(jié)語(yǔ)
本文針對(duì)使用針式打印機(jī)的場(chǎng)合,深入分析二維條碼和針式打印機(jī)的特點(diǎn),結(jié)合同領(lǐng)域內(nèi)技術(shù)人員提出的思路的優(yōu)勢(shì)和不足,對(duì)目前存在的針式打印機(jī)打印二維碼的問(wèn)題做了逐一整理分析井提出了切實(shí)可行的解決思路,解決了針式打印機(jī)打印二維條碼時(shí)普遍存在的信息容量低、識(shí)別率低、紙張破損這三個(gè)主要問(wèn)題,使得針式打印機(jī)打印二維條碼具備了實(shí)用價(jià)值,方便了相關(guān)系統(tǒng)的推廣。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標(biāo)題:基于針式打印機(jī)的二維條碼
本文網(wǎng)址:http://www.oesoe.com/html/support/1112189112.html