1. 程式人生 > >128碼對應表及驗證規則

128碼對應表及驗證規則

 CODE 128 國家標準
1. code 128碼格式:
  從左起: 空白區域,起始字元,資料區域,校驗碼,結束字元,空白區域。
  所有字元條紋影象都是以黑色開始,白色結束,只有結束字元例外。
 
2. 起始字元:
由於128碼有三個字符集。所以有三個起始字元。
Start A : 表示後面的碼值程式碼是從字符集A中值。  全部大寫字母和標點符號和特殊符號。
        用六個黑白粗細不一表示為:{2,1,1,4,1,2}        
Start B: 表示字符集B,全部大小寫字元和標點符號。資料為:{2,1,1,2,1,4}
Start C: 表示字符集C,數字00-99. 資料為:{2,1,1,2,3,2}
 
3. 資料字元的表示
在128碼中所有資料都是有1-4的六位陣列表示,總共繪製成11條黑白條紋。
 
校驗碼演算法:
校驗碼=(起始字元值 +第一位資料值*1 +第二位資料值*2+ …. + 第 n 位資料*n )%103;
 
4. 結束字元:
128碼結束字元只有一個在編碼表中以Stop 來表示,資料為:{2,3,3,1,1,1,2};

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
圖形方式輸出Code128C條形碼

最近的專案牽涉到一維條碼列印的問題。條碼的選型上倒沒什麼,因為要求短且僅包含數字,所以決定選用Code128C。在國外的網站上找了點資料研究了下,終於大致搞懂了Code128C的原理和實現方法。

Code128C只能編碼長度是偶數的數字串,這是它的前提之一。說起來編碼規則很簡單,00 - 99 這100個數字每個數字都預先規定好一個條碼,然後把原始的待編碼字串兩位兩位的讀取,每個兩位都從上面提到的碼錶中找到對應的條碼,追加。

舉個例子,我們要列印12345678的Code128c條碼。首先列印Code128c的條碼頭,bbsbssbbbss。(b代表1個單位寬度的豎線,s代表1個單位寬度的空白)

然後對12345678編碼。我們把它看成 12 34 56 78。12對應的條碼是bsbbssbbbss,34對應的條碼是bsssbsbbsss,56對應的條碼是bbbsssbsbbs,78對應的條碼是bbssssbsbss。按次序堆積起來就是了。

現在應該很好理解為什麼C型128碼可以列印的比較短,就是因為輸出的資訊被壓縮到原來的一半。

接下來就是一個自校驗碼。計算方法是:(105 + (1 * 12 + 2 * 34 + 3 * 56 + 4 *78)) % 103 = 47。再追加47對應的條碼bsssbbbsbbs。

這裡有個注意點是,第n組數字要乘以n。比如,12是第一組所以乘1,而34是第二組所以乘2。

最後就是終結符,固定為bbsssbbbsbsbb,也追加。

如此得出一個可以代表條形碼的字串:
bbsbssbbbss bsbbssbbbss bsssbsbbsss bbbsssbsbbs bbssssbsbss bsssbbbsbbs bbsssbbbsbsbb (實際上沒空格)

也就是 StartC 12 34 56 78 47 Stop (實際上沒空格)


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
128碼有A/B/C三種方式

         A  B  C    A B C
00  SP  SP   00  11011001100   
01  !  !   01  11001101100   
02  "  "   02  11001100110   
03  #  #   03  10010011000   
04  $  $   04  10010001100   
05  %  %   05  10001001100   
06  &  &   06  10011001000   
07  /'  /'   07  10011000100   
08  (  (   08  10001100100   
09  )  )   09  11001001000   
10  *  *   10  11001000100   
11  +  +   11  11000100100   
12  ,  ,   12  10110011100   
13  -  -   13  10011011100   
14  .  .   14  10011001110   
15  /  /   15  10111001100   
16  0  0   16  10011101100   
17  1 1   17  10011100110   
18  2 2   18  11001110010   
19  3  3   19  11001011100   
20  4  4   20  11001001110   
21  5 5   21  11011100100   
22  6 6   22  11001110100   
23  7  7   23  11101101110   
24  8 8   24  11101001100   
25  9  9   25  11100101100   
26  :  :   26  11100100110   
27  ;  ;   27  11101100100   
28  <  <   28  11100110100   
29  =  =   29  11100110010   
30  >  >   30  11011011000   
31  ?  ?   31  11011000110   
32  @  @   32  11000110110   
33  A  A   33  10100011000   
34  B  B   34  10001011000   
35  C  C   35  10001000110   
36  D  D   36  10110001000   
37  E  E   37  10001101000   
38  F  F   38  10001100010   
39  G  G   39  11010001000   
40  H  H   40  11000101000   
41  I  I   41  11000100010   
42  J  J   42  10110111000   
43  K  K   43  10110001110   
44  L  L   44  10001101110   
45  M  M   45  10111011000   
46  N  N   46  10111000110   
47  O  O   47  10001110110   
48  P  P   48  11101110110   
49  Q  Q   49  11010001110   
50  R  R   50  11000101110   
51  S  S   51  11011101000   
52  T  T   52  11011100010    
53  U  U   53  11011101110
54  V  V   54  11101011000
55  W  W   55  11101000110
56  X  X   56  11100010110
57  Y  Y   57  11101101000
58  Z  Z   58  11101100010
59  [  [   59  11100011010
60  //  //   60  11101111010
61  ]  ]   61  11001000010
62  ^  ^   62  11110001010
63  _  _   63  10100110000
64  NUL  `   64  10100001100
65  SOH  a   65  10010110000
66  STX  b   66  10010000110
67  ETX  c   67  10000101100
68  EOT  d   68  10000100110
69  ENQ  e   69  10110010000
70  ACK  f   70  10110000100
71  BEL  g   71  10011010000
72  BS  h   72  10011000010
73  HT  I   73  10000110100
74  LF  j   74  10000110010
75  VT  k   75  11000010010
76  FF  l   76  11001010000
76  FF  l   76  11001010000
77  CR  m   77  11110111010
78  SO  n   78  11000010100
79  SI  o   79  10001111010
80  DLE  p   80  10100111100
81  DC1  q   81  10010111100
82  DC2  r   82  10010011110
83  DC3  s   83  10111100100
84  DC4  t   84  10011110100
85  NAK  u   85  10011110010
86  SYN  v   86  11110100100
87  ETB  w   87  11110010100
88  CAN  x   88  11110010010
89  EM  y   89  11011011110
90  SUB  z   90  11011110110
91  ESC  {   91  11110110110
92  FS  |   92  10101111000
93  GS  }   93  10100011110
94  RS  ~   94  10001011110
95  US  DEL   95  10111101000
96  FNC3  FNC3   96  10111100010
97  FNC2  FNC2   97  11110101000
98  SHIFT  SHIFT   98  11110100010
99  CodeC  CodeC   99  10111011110
100  CodeB  FNC4   CodeB  10111101110
101  FNC4  CodeA   CodeA  11101011110
102  FNC1  FNC1   FNC1  11110101110
103  STARTA  STARTA   STARTA  11010000100
104  STARTB  STARTB   STARTB  11010010000
105  STARTC  STARTC   STARTC  11010011100
終止符 STOP  STOP   STOP  1100011101011

相關推薦

128對應驗證規則

 CODE 128 國家標準 1. code 128碼格式:   從左起: 空白區域,起始字元,資料區域,校驗碼,結束字元,空白區域。   所有字元條紋影象都是以黑色開始,白色結束,只有結束字元例外。  2. 起始字元: 由於128碼有三個字符集。所以有三個起始字元。 Sta

keycode鍵盤 按鍵 - 鍵 對應

停止 和數 eba name 數字鍵盤 搜索 cape bar bgcolor 字母和數字鍵的鍵碼值(keyCode) 按鍵鍵碼按鍵鍵碼按鍵鍵碼按鍵鍵碼 A 65 J 74 S 83 1 49 B 66 K 75 T 84 2 50 C 67 L 76 U

ASCII對應chr(9)、chr(10)、chr(13)、chr(32)、chr(34)、chr(39)、chr(..

right 雙引號 article add 空格 p s tails otto ron chr(9) tab空格 chr(10) 換行 chr(13) 回車 Chr(13)&chr(10) 回車換行 chr(32) 空

Thinkphp 如何自動驗證驗證規則

    在新增資料或者建立資料的時候,我們一般對資料進行處理,ThinkPHP模型層提供的一種資料驗證方法,可以在使用create建立資料物件的時候自動進行資料驗證。    1,自動驗證的用法 namespace Home\Model; use Think\Model;

element-ui Form驗證規則全解

element的form表單非常好用,自帶了驗證規則,用起來很方便,官網給的案例對於一些普通場景完全沒問題,不過一些複雜場景的驗證還得自己多看文件摸索,自己經過數次爬坑 之後,總結了幾種form表單的驗證規則,為了便於閱讀,驗證規則是拆分的,完整的程式碼放在文末  

ASCII對應chr(9)、chr(10)、chr(13)、chr(32)、chr(34)、chr(39)、chr(42)

chr(9) tab空格       chr(10) 換行      chr(13) 回車        Chr(13)&chr(10) 回車換行       chr(32) 空格符       chr(34) 雙引號       chr(39) 單引號 chr(33) !        chr(

DWZ驗證規則一覽表

required-validate       //開啟表單驗證 必填: class="required" 必填+郵箱: class="required email" 電話: class="phone" 密碼: class="required alphanumeric" mi

Jquery Validate 默認校驗規則常用的自定義驗證規則

字符 eth ber exp string amp 手機 zip 子郵件 Jquery Validate 相關參數及常用的自定義驗證規則 一、官網地址:http://bassistance.de/jquery-plugins/jquery-plugin-validatio

wtforms-單生成驗證

arch 屬性 方法 pymysql 我們 request ipad html5 .data 介紹 wtforms是一個支持多個web框架的form組件,主要用來做表單的驗證以及生成的, 安裝 pip install wtforms 使用 自定義一個類,繼承wtform

小程序驗證對應的軟鍵盤收起事情處理

nta 錯誤 gate inter wid 倒計時 ase dex etime   碰見一個小程序的驗證碼輸入,有4個input,輸入第一個的時候第二個聚焦,這個時候軟鍵盤就會收起再彈出,很大的一個bug,最後只能手動寫一個軟鍵盤,現在可以分享出來,讓大家看一看代碼:,這是

小程式單認證佈局驗證

  tset.wxml <view class='form'> <view class='content'> <view class='left'>姓名:</view> <view class='right'>

Jquery Validate 相關參數常用的自定義驗證規則

手機號碼驗證 cti dea 復制 接收 least join cep mat 一、官網地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation 二、默認校驗規則 1

UI標籤庫專題三 JEECG智慧開發平臺 FormValidation 單提交驗證標籤

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

在虛擬機器部署tp5的框架報錯404驗證出不來的解決思路

執行環境介紹 分開安裝了apt-get install nginx |php |mysql 問題一:報錯404 Not Found 解決辦法: location / { #try_files $uri $uri/ =404; #try_files $uri $uri/ /index.php?$query_s

php實現驗證單的結合使用

表單 FormIdentifyingCode.php <form action="AuthcodeidentifyCode.php" method="post"> <img src="identifyingCode.php" ti

Java實現單登陸驗證

Java實現登陸及驗證 前端程式碼 前端程式碼只是一個表單隨意就好具體樣式看個人愛好 <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8"&

ligerui 驗證 隱藏列 獲取對應行中某一列的資料

ar v = $("#PostForm").validt({ //除錯狀態,不會提交資料的 debug: true, rules: { DEPART_ID: 'required', P_DSC: 'required', }, 此處,rules裡的DEPART_ID和P_DS

Struts2驗證框架的配置Validation.Xml常用的驗證規則

<field name="username"> <field-validator type="required"> <message>指定檢驗失敗的提示資訊</message> </field-validator> </field> &l

Jquery Validate 相關引數常用的自定義驗證規則

IT程式設計師開發必備-各類資源下載清單 Jquery Validate 相關引數 //定義中文訊息 var cnmsg = { required: “必選欄位”, remote: “請修正該欄位”, email: “請輸入正確格式的電子郵件”, url:

Python 批量下載驗證圖片切割驗證圖片,識別驗證,並以識別的文字重命令驗證

1、Python 批量下載驗證碼圖片 2、批量切割驗證碼圖片 3、識別驗證碼,並以識別的文字重命令驗證碼 #!C:/Python27 #coding=utf-8 import pytesseract from pytesser import * from PIL imp