付得志
摘要:條形碼是當(dāng)今圖書館管理的重要組成部分。本文研究了利用excel和Code 39碼字體,通過excel函數(shù)計(jì)算,自動(dòng)生成適合學(xué)校圖書館使用的條形碼。
關(guān)鍵詞:條形碼;Code39碼;excel函數(shù)
中圖分類號:F274;TP3 91. 44
文獻(xiàn)標(biāo)識碼:A
文章編號:1672 - 9129(2018)12 - 0236 - 01
1 背景
當(dāng)今學(xué)校圖書種類和數(shù)量急劇的增加,為提高圖書管理工作的可靠性,很多館都引入了圖書管理系統(tǒng)。而條形碼是管理系統(tǒng)中不可缺少的部分。條碼設(shè)計(jì)與打印,一般需要專用付費(fèi)軟件來完成。而這里介紹的,是用最常用的excel,來完成此項(xiàng)工作。
2 制作條形碼的知識準(zhǔn)備
用excel生成條形碼,一種方式是用Excel 2003(或2007)中內(nèi)置的Microsoft BarCode控件來制作。但這種方法不方便自動(dòng)累加,設(shè)計(jì)復(fù)雜,不適合圖書館大量條形碼的制作。
另一種方式,是用條形碼字體生成。思路是:用excel函數(shù)計(jì)算和自動(dòng)填充功能,生成自動(dòng)累加的字母和數(shù)字組成的序列號,然后把這些序列號轉(zhuǎn)化為條形碼字體,填充打印到切分好的不干膠A4紙上。這種方法相對簡單、容易實(shí)現(xiàn)。下面我就詳細(xì)介紹這種方法。
首先,附上一些條形碼的基本概念:
最常用的條形碼有Code 39碼和code128碼。由于code128碼校驗(yàn)位算法復(fù)雜,在excel里實(shí)現(xiàn)相對困難,所以這里我們選用code39碼。
code39碼特點(diǎn):
(1)可以對任意長度的數(shù)據(jù)編碼。
(2)支持設(shè)備廣泛,幾乎所有條形碼設(shè)備都能閱讀、打印。
(3)編制簡單,簡單的處理開發(fā)就能方便生成相應(yīng)的條形編碼。
(4)每5條線代表一個(gè)字符;粗線代表一,細(xì)線代表零;線條之間的空隙,寬的代表一,窄的代表零;
(5)5條線加上之間的4條空隙就是9位二進(jìn)制編碼,且這9位中必定有3位是二進(jìn)制一,所以稱作39碼;
(6)條形碼的首尾各加一個(gè)”*”,標(biāo)識開始和結(jié)束。一般情況下不另外需要校驗(yàn)碼。
(7)Code 39碼只接受43個(gè)有效輸入字符:(A-Z0-9)以及(一%.+MYM/)幾個(gè)符號和空格。其余會(huì)被忽略。
3 條形碼制作
有了上面對code39碼的了解,下面我們就可以開始操作了。
3.1 首先下載code39字體。普通的code39字體很容易下載,但另人遺憾的是,最容易下載到的code39字體,”*”字符并不能在excel中顯示成條形碼圖形,還是原字符。這種沒有開始和結(jié)束標(biāo)志符的條形碼,掃碼器或手機(jī)不能讀取。且通過調(diào)整excel,也不能實(shí)現(xiàn)。所以找到一款合適的code39字體非常重要。經(jīng)過大量的搜索,終于找到了code39條形碼V100009_.TTF這種字體。這種字體首尾標(biāo)志符能正常顯示,且條形碼下面附帶對應(yīng)字符,方便人工閱讀、對照。把找到的字體右擊選擇安裝,就可以用了。
3.2 生成圖書條形碼。
(1)啟動(dòng)excel,在單元格A1中輸入起始碼*000001*,作為第一本書的條形碼,以后依次累加。6位字符最多支持100萬本,一般足夠用。
(2)在單元格B1 - F1中輸入條形碼值:這里可以用excel的自動(dòng)填充,但為了后期更改、打印的方便,用函數(shù)求出卻是更好的辦法。在單元格B1中輸入=”*”&TEXT(( MID( A1,2,6)+1),”000000”)&”*”,這個(gè)公式中,首先用MID函數(shù)取出單元格A1中從第2字符開始的6個(gè)字符,得到000001,再加1,再用字符格式函數(shù)TEXT把得到的值設(shè)置成固定6位格式,否則遇到000002這種前面是零的數(shù)時(shí),會(huì)變成只有2而沒有前面O的情況。再用”&”運(yùn)算符在首尾加上識別符”*”,得到一個(gè)完整的條形碼值。然后對單元格Bl向右進(jìn)行拖拽填充至Fl,單元格Cl -Fl中的條形碼數(shù)值就出來了。最后把第一行字體設(shè)置成下載的code39字體,大致設(shè)置好字號、列寬和行高。
(3)在單元格A2中輸入某某小學(xué)圖書館,增加學(xué)校的標(biāo)志。大致設(shè)置好字體、字號、行高,具體數(shù)值自己滿意即可。
(4)在第3行中自動(dòng)生成條形碼:在單元格A3中輸入=”*”&TEXT(( MID( Al,2,6)+6),”000000”)&”$”,思路和B1中的公式大同小異,區(qū)別是在Al基礎(chǔ)上加6而不是加1。然后對單元格A3向右進(jìn)行拖拽填充至F3,完成第3行數(shù)值的處理。最后把第3行字體設(shè)置成下載的code39字體,大致設(shè)置好字號、列寬和行高。
(5)把單元格A2 - F2復(fù)制粘貼到第4行。
(6)處理好前面幾行的條形碼數(shù)據(jù)之后,接下來就是自動(dòng)填充了。選中A3 - F4單元格,拖動(dòng)右下角復(fù)制點(diǎn),向下填充,條形碼就會(huì)自動(dòng)填充,拖出自己想要的份數(shù)。用手機(jī)掃碼試驗(yàn),成功??!
3.3 打印條形碼:
(1)購買14行*6列的84分不干膠紙。
(2)設(shè)置處理好的excel文檔的行高、列寬、頁邊距,使每頁正好可以打印14行*6列,套打在84分不干膠紙上。這是個(gè)細(xì)致活,要反復(fù)調(diào)整,最后在樣張上打印,直到精確套印在84分紙上。
(3)最后打印。這里注意要用噴墨而不用激光打印機(jī),原因是噴墨的墨水會(huì)滲入到不干膠紙內(nèi)部,不會(huì)脫落,而激光打印機(jī),由于墨粉是通過高溫壓在不干膠紙光面表層,附著并不牢固,影響使用。
經(jīng)過上面的操作,一張張打印好的條形碼A4不干膠紙就出現(xiàn)在我們眼前,是不是很有成就感呢?
參考文獻(xiàn):
[1]張朝鑫.基于條形碼的圖書管理系統(tǒng)設(shè)計(jì)[J].科技風(fēng),2014(9):37 -37.
[2]李麗賓.條碼技術(shù)及條碼圖書管理系統(tǒng)[J].四川圖書館學(xué)報(bào),2001(6):64 -67.