Barcode - Code128 應用(下)

Barcode - Code128 應用(下)

再介紹完Code128後 接下來就來談談如何應用在實務當中

目前常用條碼的呈獻方式大概不外乎下列二種

    ⊙利用條碼字型檔來產生條碼

    ⊙利用繪圖方式來產生條碼

至於何種方式才是最好的,就得要適情況而定了

在這裡就針對使用條碼字型檔來產生條碼的方式來加以說明

首先,要有Code128條碼字型(網路上有很多免費可使用的)

取得字型檔後,將字型檔置入 C:\windows\fonts 即可完成安裝

當一切都以為非常順利的時候,讓人傻眼的代誌即將上演

天啊,怎麼印出了下面的東西 @@

image

怎麼啟始碼/停止碼都變成了亂碼了呢!?

原來在多數的情況下,免費版本的Code128字型檔裡面

都沒有提供完整 Code128 本身所使用到的全部字碼

聽到這個消息,整個臉頓時都鐵青了下來 >”<

基於窮人買不起付費的軟體及Freeware至上的大無畏精神

又開始動起了腦筋,打量該怎麼去解決這個冏境

既然現在要使用的條碼呈獻是使用字型檔的方式

那麼就從字檔來著手,想必是最快最好的選擇

古代有創頡造字,那現代也來個雲淡風輕造碼

既然免費的字型檔裡不提供完整的條碼,那只好自己來

把所有缺少的條碼,一個一個給它創造回去

工欲善其事,必先利其器  推薦一套非常好用的軟體

FontCreator (當前使用版本 V 6.0)

在前一篇的文章中,有附上一個Code128所使用到的字元表

裡面也記載了所對應的ASCII Code 分別為什麼

所以我們可以利用Word或者Excel來做整理,取得目前缺少什麼

首先, 開啟一個Word或Excel檔,並開啟插入/符號功能

以下就用啟始碼 Code128:104 / ASCII:154 來做為範例

image

首先,先選擇新細明體(標楷體也行),在下方字元代碼處

選擇從 ASCII (十進位) ,  字元代碼處則鍵入 154 (ASCII Code)

就可以發現原來 Code128: 104 對應到ASCII: 154 的字元是 「š

此時,再將原來編碼方式 ASCII(十進位)切換至Unicode(十六進位)

可以得知「š」的Unicode為 $0161

image

此時,利用FontCreator 來開啟方才已經下載完的Code128字型檔

並使用Unicode Mappings 來檢視字型檔,此時即會發現條碼字型檔裡

並沒有$0161存在, 也就是為什麼方才會出現亂碼的真正原因

image

所以這時候就要開始來造碼了. 首先在條碼的字型檔增加一個新的字型

image

於新增加的空白字型上,點選右鍵/屬性

image

選擇Mappings tag, Platforms 選擇Unicode 在Pappings Value處填上 $0161

再選點增加後,按OK即可

image

雙擊新增加的空白字型進入編輯畫面, 畫上所缺少的條碼圖型

(條碼圖型為何,可參考考上篇文章裡所附上的條碼圖型表)

image

其它缺少的字型也是重覆上述的方法去實作

完成後存檔離開, 至C:\windows\fonts 下,將先前安裝Code128字型刪除

再重新安裝這個修改後的版本, 就可以完整顯示條碼了

image

大功告成

 

參考資料

BarCode 1 Code 128 Page

Code 128 Specification

Barcode128應用實務篇(上) 
Barcode128 應用實務篇(下)