原創|使用教程|編輯:郝浩|2013-05-21 16:16:55.000|閱讀 467 次
概述:如果你想編碼特殊的Latin-1字符,例如“?”(sharp s)的問題就是SHIFT JIS表格中不包含“?” (sharp s)字符。所以在用QR Code二維碼1997/2000版本的默認編碼中不能編碼。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
如果你想編碼特殊的Latin-1字符,例如“ß”(sharp s)的問題就是SHIFT JIS表格中不包含“ß” (sharp s)字符。所以在用QR Code二維碼1997/2000版本的默認編碼中不能編碼這些特殊的Latin-1字符。
?使用QR-Code 2005編碼完整Latin-1字符集默認情況下是可以實現的。
使用UTF-8或者ISO-8859-1
唯一的可能編碼“sharp s”的方法就是切換到 ISO-8859-1 (Latin-1)或者UTF-8 字符集。
不利條件
使用其他代碼頁或其他字符集作為2D條碼的默認字符集會導致在解碼階段出現問題。條形碼閱讀器會試圖使用默認的字符集(QR-Code 97/2000的SHIFT JIS)QR Code數據。
使用方法
可以在封閉應用程序中使用UTF-8或者ISO-8859-1。如果以二進制形式傳輸數據(如一個串行條形碼閱讀器或者圖像掃描儀將會以字節序列傳輸數據)。你可以通過程序解碼條碼數據為UTF-8或者Latin-1格式的以便接收數據如果有幸接觸到智能圖像解碼軟件(比如ZXing),該軟件會自動檢測使用的Latin-1,UTF-8或者Shift JIS。如果你沒有封閉應用程序或沒有控制的條碼譯碼器,就不能使用這種方法。
注意ECI序列
理論上QR Code可以在一個用戶可選擇的字符集中編碼數據。通過設計QR Code,所謂的“Extended Channel Interpretation” 代碼語言可以用來指示用于隨后數據的字符集。ECI是QR-Code二維碼規范的一部分,并支持TBarCode Escape Sequences轉義序列。但是問題在于條形碼解碼器經常忽略ECI,所以實際上并沒有什么用處。
如果想在沒有ECI’s的情況下使用UTF-8,可以嘗試通過在開始時使用UTF-8字節順序標記為數據添加前綴表明UTF-8格式(EF BB BF)。但是這個沒有具體標準,如果你的條形碼閱讀器/解碼軟件識別出這個標志,你必須要進行驗證。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都控件網