1

我需要创建可能包含非拉丁字符的 DataMatrix 条形码。当条形码仅由拉丁字符组成时,我有正确创建条形码的代码;但是,当我使用非拉丁(希伯来语或俄语)字符运行相同的代码时,尽管代码运行完成并创建了条形码,但条形码阅读器不会破译非拉丁字符。任何帮助或想法将不胜感激!

4

1 回答 1

0

您的问题与生成条形码之前使用的字符编码有关。生成器用于编码的编码必须与阅读器用于解码的编码相匹配。

可能的编码是:

  1. DataMatrix 和其他二维条码标准支持扩展通道解释 ( ECI )。生成器在条形码数据中放置一个 ECI 识别码,因此阅读器知道使用 ECI 将数据正确转换回文本。
  2. UTF-8编码几乎所有语言。
  3. 代码页是一种较旧的编码,但如果您的生成器正在使用它,您可以将 1255 用于希伯来代码页或 1251 用于俄语代码页。有关更多信息,请参阅此 SO 答案

要测试您的编码,请尝试使用 Inlite 的在线条形码阅读器(OBR),它应该可以读取 ECI 和 UTF-8 编码条形码的正确文本。如果是这样,则问题出在您的条形码阅读器未正确解码。

如果 OBR 返回二进制数据,则您的生成器要么使用代码页,要么根本没有正确编码。尝试另一个支持 ECI 或 UTF-8 的生成器。

于 2014-09-17T23:54:54.517 回答