学习一下 PDF417 条码
PDF417條碼(Portable Data File 便攜式數據文件)是一種線性堆疊式的二維碼,因為這個特性,在識讀上,可以采用線性掃描的產品比如 激光掃描槍,CCD之類的條碼閱讀器讀取,但實際操作效果不如影像式產品來的速度更快。?
PDF417條碼作為一個二維碼和Maxicode(為UPS定制)、Datamatrix同被美國國家標準協會 (American National Standards Institute, ANSI) MH10 SBC-8委員會選為二維條碼國際標準制定范圍,其中PDF417主要是預備應用於運輸包裹與商品資料標簽(Burnell, 1995)。PDF417不僅具有錯誤偵測能力,且可從受損的條碼中讀回完整的資料(Moore, 1994),亦即「錯誤復原能力」,其錯誤復原率最高可達50%,如圖所列各種情形,皆可將資料復原。
圖:?PDF417的錯誤復原能力 (圖片來自網絡,用于參考)
PDF417二維條碼的結構
PDF417是一個公開碼,任何人皆可用其演算法而不必付費,因此是一個開放的條碼系統。PDF417的PDF為可攜性資料檔(Portable Data File)的縮寫,取其條碼類似一個資料檔,可儲存較多資料,每一個PDF碼的儲存量可高達1,108個文數字(Bytes),若將數字壓縮則可存放至2,729Bytes。
每一個PDF417碼是由3~90橫列堆疊而成,而為了掃瞄方便,其四周皆有靜空區,靜空區分為水平靜空區與垂直靜空區,至少應為0.020英寸,即20mil,如圖所示。
圖?:PDF417碼的結構 (圖片來自網絡,用于參考)
其中每一層都包括下列五個部份:
起始碼。
左標區:在起始碼後面,為一指示符號字元。
資料區:可容納1~30個資料字元。
右標區: 在資料區的後面,為一指示符號字元。
結束碼:在橫列之最右邊。
除了起始碼和結束碼外,左標區、資料區和右標區的組成字元皆可稱為字碼 (Codeword),每一個字碼由17個模組(Modules)所構成,每一個字碼又可分成4線條(或黑線)及4空白(或白線),每個線條至多不能超過6個模組寬。每個417碼因資料大小不同,其行數及每行的資料模組數與字碼數都可以從1至30不等。字碼的組成如圖所示。
圖:PDF417字碼的組成 (圖片來自網絡,用于參考)
?
PDF417的尺寸
也因為符號的組合較有彈性,每一個PDF417二維條碼可因應不同的實體設備印成不同的長寬比例與密度,以適應印刷條件及掃瞄條件的要求。其中每個模組寬X是PDF417碼中最重要的尺寸之一,X值的最小限制為0.0075英寸(約0.191mm),在同一個條碼符號中,X的值是固定不變的。
PDF417的最小高度與長度可由下列算式算出:
W= (17C+69)X+ 2Q
H = R ×Y+ 2Q
其中:
W=?條碼寬度,H=條碼高度,X=條碼模組寬,Y=層數
C=每層符號字元的總數(含左右標區),R=層高,Q=靜空區大小
PDF417的錯誤糾正能力?
PDF417的一個重要特性是其自動糾正錯誤的能力較高,不過PDF417的錯誤糾正能力與每個條碼可存放的資料量呈現反比關系,PDF417碼將錯誤復原分為9個等級,其值從0到8,級數愈高,錯誤糾正能力愈強,但可存放資料量就愈少,一般建議編入至少10%的檢查字碼。
表1:可存放資料量與錯誤糾正等級對照表
| 錯誤糾正等級 | 糾正碼數 | 可存資料量(位元) |
| 自動設定 | 64 | 1024 |
| 0 | 2 | 1108 |
| 1 | 4 | 1106 |
| 2 | 8 | 1101 |
| 3 | 16 | 1092 |
| 4 | 32 | 1072 |
| 5 | 64 | 1024 |
| 6 | 128 | 957 |
| 7 | 256 | 804 |
| 8 | 512 | 496 |
表2:PDF417的建議錯誤糾正等級
| 資料字碼數 | 錯誤糾正等級 |
| 1~40 | 2 |
| 40~160 | 3 |
| 161~320 | 4 |
| 321~863 | 5 |
如前所述,錯誤糾正等級涉及拒讀錯誤(E錯誤)與替代錯誤(T錯誤)兩種錯誤類型。無論使用哪一種條碼機都有一定的精密度極限,造成線條和空白的寬度與理想寬度間必有偏差存在,條碼掃瞄設備能夠讀出解碼演算法所允許范圍內的不精確條碼符號,目前標準中規定X的值最小為0.0075英寸(約0.191mm),此一限制同時反映出目前標準設備的技術現狀。
表3: PDF417的特性
| 項目 | 特性 |
| 可編碼字元集 | 8位二進制資料,多達811800種不同的字元集或解釋 |
| 類型 | 連續型,多層 |
| 字元自我檢查 | 有 |
| 尺寸 | 可變 高:3~90層 寬:1~30欄 |
| 讀碼方式 | 雙向可讀 |
| 錯誤糾正字碼數 | 2~512個 |
| 最大資料容量 | 安全等級為0,?每個符號可表示1108個位元 |
?
總結
以上是生活随笔為你收集整理的学习一下 PDF417 条码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Keepalived配置文件详解
- 下一篇: mysql新增列并同时增加数据_图解My