----條形碼技術(shù)簡介--條形碼作為一種識別輸入技術(shù),由于其顯而易見的快速、準(zhǔn)確、低廉等優(yōu)點(diǎn),被廣泛應(yīng)用于商品流通、圖書館管理等眾多的自動化管理系統(tǒng)中。----條形碼是利用條(著色部份)、空(非著色部份)及其寬、窄的交替變換來表達(dá)信息。每一種編碼,都制定有字符與條空、寬窄表達(dá)的對應(yīng)關(guān)系,只要遵循這一標(biāo)準(zhǔn)打印出來的條、空交替排列的“圖形符號”,這一“圖形符號”中就包含了字符信息;當(dāng)識讀器劃過這一“圖形符號”時,這一條、空交替排列的信息通過光線反射,在識讀器內(nèi),這種光信號被轉(zhuǎn)換成數(shù)字信號,再經(jīng)過相應(yīng)的解碼軟件,就能將“圖形符號”還原成字符信息。----三九碼是一種應(yīng)用比較普遍的條形碼,它長度可變、可校驗,容納的字符多達(dá)43個(包括數(shù)字0~9、字母A~Z及其它七個特殊字符)。由于在表示每一字符時,使用9個元素,其中3個寬元素、6個窄元素,故名39碼,這3個寬元素中必須有兩個是條(有四個特殊用途的字符除外)。如字母“J”的編碼規(guī)則為:“NNNNWWWNN”,其中N表示窄元素,W表示寬元素,奇數(shù)位為條元素,偶數(shù)位為空元素,寬窄元素的寬度尺寸比為2~3,且在同一個條碼中必須是固定的。在打印制作條形碼時,條是需要打?。ㄖ┑?,而空元素內(nèi)不必打印的,不過要將其寬度計算在內(nèi)。對于某一要打印的字符串,按其先后順序打印,串前串后各加一個“*”符號做為起始符與終止符,相鄰的字符間在打印時由“位空”分隔,“位空”類似空元素,即不著色部分,其寬度應(yīng)小于1.35mm,為編程方便,通常取為一個窄元素的寬度。----條形碼的制作有制版印刷、輕印刷兩種方式,輕印刷是指使用普通打印機(jī),在計算機(jī)控制下制作條形碼。這種制作方法靈活,成本較低,即適宜于同一號碼的單條制作,也可用于同一號碼的大量制作,這一特點(diǎn)是制版印刷無可替代的。使用計算機(jī)軟件打印條形碼,其原理是將條形碼作為圖形來看待,用編程語言中的繪圖語句-畫矩形框,在相應(yīng)的坐標(biāo)上畫出各種寬度不同的條元素,這樣即可實現(xiàn)條形碼的計算機(jī)軟件打印。----VB中幾種打印功能在條碼打印時的比較----VisualBasic是近年來比較流行的編程語言,功能強(qiáng)大,易學(xué)易用。VisualBasic對打印功能提供了兩種輸出方式:一是首先將條碼輸出到某一對象,再使用該對象中Print方法,將其輸出到打印機(jī);二是使用打印機(jī)對像Printer繪圖。下面對這種方法做個比較:----一、將條形碼圖在窗體上繪出,再使用PrintForm方法打印窗體。窄條打?。篖ine(x,y)-step(i,h),,bf寬條打?。篖ine(x,y)-step(3*i,h),,bf或Line(x,y)-step(2*i,h),,bf----再使用formname.PrintForm將條形碼輸出到打印機(jī)。----在這種方式下,窗體的量度單位可以有:twip,point,picel三種其中以twip為單位為最小。----以twip為單位,對條形碼來說,打印精度可達(dá)30,即當(dāng)窄元素寬度必須等于或大于30時,打印出來的條形碼可以閱讀,若窄元素的寬度小于30,條形碼中相鄰的條會粘連在一起,無法識讀。當(dāng)窄元素寬度為30時,“J10059”六位字符條碼尺寸為:67mm。----以Picel為單位,打印精度可達(dá)2,當(dāng)窄元素寬度為2時,“J10059”六位字符條形碼尺寸為80mm以上。----以Point為單位,打印精度可達(dá)2,當(dāng)窄元素寬度為2時,J10059六位字符條形碼尺寸為110MM。----二、直接使用Printer.Line,在打印機(jī)上繪畫-畫矩形框窄條打?。篜rinter.Line(x,y)-Step(i,h),,bf寬條打?。篜rinter.Line(x,y)-Step(3*i,h),,bf或Printer.Line(x,y)-Step(2*i,h),,bf----用Printer.Line打印,量度單位為點(diǎn),最小精度為達(dá)10,當(dāng)窄元素寬為10時,J10059六位字符之條碼尺寸為:21MM。----根據(jù)以上的比較,使用第二種方法打印輸入的條形碼精度最高(同樣的字符數(shù),尺寸最短)。很顯然,不同的打印方式,分別有不同的適用范圍,對尺寸寬度要求不高的情況下,可以使用第一種打印方式,若對條形碼尺寸要求較嚴(yán)格,則使用第二種打印方式更合適。----軟件設(shè)計----一、菜單設(shè)計:由于條形碼輕印刷軟件相對說來是一個很小的系統(tǒng),需要選擇的項目不多,可以不設(shè)置菜單,而將全部的操作由窗體控件來完成。如果使用上述的第一種打印方式,則必須建立另一窗體,用于第一步的輸出條形碼圖形。----二、設(shè)計窗體控件:窗體中的控件包括兩大類,即:參數(shù)設(shè)置框、打印操作按鈕。本列設(shè)計的窗體見圖示。本列給出的是一個對參數(shù)沒有設(shè)置功能的窗體,有興趣的讀者可以在此基礎(chǔ)上自行補(bǔ)充它。----對于打印參數(shù),對條形碼的打印來說,需要指定的參數(shù)大致有:條碼寬窄比:3:1~2:1;條碼高;窄元素寬度;打印機(jī)類型及端口;打印份數(shù);打印紙尺寸規(guī)格;每行條形碼數(shù);每個條碼的字符數(shù);是否自動增值打??;增值步長;每一頁行計數(shù)起止數(shù);終止碼等。----本列設(shè)計了八個按鈕,其作用分別是:----Begin-單號條形碼打印開始----Auto-自動增值打印開始----Page-將打印機(jī)內(nèi)存中的條碼(不足一頁)打印出來----Cancel-中止自動增值打印----Delete-清除打印機(jī)內(nèi)存中的未打印條碼----Help-幫助信息----About-版本及設(shè)計信息----Exit-關(guān)閉系統(tǒng)----三、程序流程:----在本例中,條形碼的打印分為單號打??;自動增值打印兩種。單號打印,是用戶輸入一個或幾個需要打印的號碼的打印方式;而自動增值打印是用戶指定起始號、終止號及增加步長,由機(jī)器自動生成被打印號碼來打印。其實這兩種方式在打印時的操作是完全一樣的,不同之處在于被打號碼的獲取,需要注意的是由于39碼字符集中包括字符,在自動增值時要與純數(shù)字碼區(qū)別。----下面以單號打印為例,介紹條形碼打印的程序流程。----1.檢查各項參數(shù)設(shè)置是否完全正確,若正確,則繼續(xù),否則退出;----2.獲取各項參數(shù)設(shè)置;----3.為X坐標(biāo)取初值(紙的左邊打印邊界);----4.(循環(huán)A)是否打印完一行(I條條碼)?是則轉(zhuǎn)14;----5.本條條碼是否為空?是則將橫坐標(biāo)加上一條條碼之寬度;----6.打印起始符;----7.(循環(huán)B)是否打印完本條條碼(J個字符)?是則轉(zhuǎn)10;----8.打印一個字符的條碼;----9.(循環(huán)B)下一個字符;----10.打印終止符;----11.修改X坐標(biāo);----12.(循環(huán)A)下一條條碼----13.修改Y坐標(biāo);----14.打印本行每一條碼的人工識別字符;----15.本頁是否已打滿?是則打印,并對新頁坐標(biāo)初始化;----16.退出----四、程序代碼:----用于檢查參數(shù)設(shè)置正確性的程序主要從各項參數(shù)間的關(guān)系去檢查。如根據(jù)使用的寬度、高度、每行條碼數(shù),判斷是否超出了紙的打印范圍;輸入的號碼是否合法等。----可以為每字符設(shè)計一段各自的打印程序,這種方式編程簡單。也可以將打印程序與條形碼的編碼規(guī)則分離,通過參數(shù)傳遞某一字符的編碼規(guī)則,不同的字符共享同一打印程序。本列采用前一種方式。如字母“J”的編碼規(guī)則為:“NNNNWWWNN”,打印程序代碼如下:PrivateSubprn_J()Printer.Line(x,y)-Step(widt,high),,BF`打印窄條x=x+widt`改變X坐標(biāo)x=x+widt`打印窄空Printer.Line(x,y)-Step(widt,high),,BFx=x+widtx=x+widtPrinter.Line(x,y)-Step(w_n*widt,high),,BF`打印寬條x=x+w_n*widt`改變X坐標(biāo)x=x+w_n*widt`打印寬空Printer.Line(x,y)-Step(w_n*widt,high),,BFx=x+w_n*widtx=x+widtPrinter.Line(x,y)-Step(widt,high),,BFx=x+widtx=x+widt`打印位空EndSub----其中x,y分別為坐標(biāo)值,w_n為寬窄元素寬度比,widt為窄元素的寬度值(點(diǎn)),high為條形碼高度,每打印一個條元素,應(yīng)立即改變X坐標(biāo),以便打印下一個元素;打印空元素時,由于是不著色,只需改變X坐標(biāo)即可;每一個字符打印結(jié)束時,應(yīng)打印一個位空(本列中位空寬度等于窄空)。其它的42個字符的編碼規(guī)則,讀者可以在有關(guān)條形碼技術(shù)的文獻(xiàn)中查到。 信息來源:中國自動化網(wǎng)
相關(guān)資訊
-
拼版是指將要印刷的頁面按其折頁方式按頁碼順序排列在一起,其大小由印刷幅面及印刷紙張的大小來定。拼版可分為:零件的拼版和書刊的拼版兩種。那印刷廠拼版印刷對印版方向有哪些要求呢? 一、拼版印刷的方向要求 不論是用單版還是用多版印刷,首先應(yīng)明確拼色圖案…
2025/4/27 7:28:19
-
要實現(xiàn)快速換單,先從自動掛版開始 掛版是印刷換單過程中必不可少的環(huán)節(jié)。有些人認(rèn)為掛版是一件簡單的事,殊不知就這么一件“小事”,如果不注意細(xì)節(jié)也是會對印刷效率和品質(zhì)造成很大影響的。如今,部分大型紙箱廠已開始使用智能化自動掛版設(shè)備以提升印刷效率和品質(zhì)。 …
2025/4/26 8:02:30
-
本文主要為大家講解印刷翻版和印刷拼版相關(guān)知識點(diǎn)希望大家能有所收獲?! ∫?、印刷翻版類型 大多設(shè)計作品都需雙面印刷。一張紙印完一面還得印另一面,就需要翻面,在印刷上就要做翻版。印刷中根據(jù)印版內(nèi)容和翻版方向,將翻版分為3種。 1、正反版印刷 正反版印刷…
2025/3/30 10:15:47
-
食品外包裝印有消防宣傳標(biāo)語,負(fù)責(zé)人成為消防公益代言人。近日,在婁底新化縣,這一創(chuàng)新舉措引發(fā)市民點(diǎn)贊。新化縣消防大隊負(fù)責(zé)人表示:“今年4月份以來,新化縣開展了‘全民消防我行動’大型公益活動,湖南前進(jìn)食品股份有限公司董事長羅教孟成為消防公益代言人,首批具有消防宣…
2018/7/10 12:21:45
共有 網(wǎng)友評論