0

真的希望有人能够帮助解决这个问题,因为我几乎失去了理智,试图理解为什么会发生这种情况。

使用常规 USB 条码扫描仪和手机摄像头扫描 Code 39 条码中的相同值时,我得到了不同的结果。

使用条码扫描器扫描 482168 的值时,我将值 142673096 粘贴到记事本中;使用条形码扫描仪扫描 482172 的值时,我将值 142673122 粘贴到记事本中;值 482169 和 482171 已正确粘贴。

我最初认为问题出在生成这些条形码的应用程序上,但是,在此处生成这些条形码时也会发生同样的情况https://barcode.tec-it.com/en/Code39FullASCII?data=482168

我以为条形码的长度和宽度可能是问题,但调整它们没有任何效果。

有没有人偶然发现过类似的东西,并能提出为什么这些会以不同的方式被读取和编码?

4

1 回答 1

1

我发现这个问题非常有趣,所以我比较了各种条形码类型,看看是什么导致扫描仪错误识别条形码。事实证明,Italian Pharmacode(也称为 Code 32)是完全匹配的。Code32 实际上是使用压缩方案的 code39。

这是 code39 中的 482168:

在此处输入图像描述

和code32中的142673096:

在此处输入图像描述

看起来您的扫描仪将 code32 优先于 code39。所以你只需要在你的扫描仪中禁用 code32。

于 2020-08-14T15:50:03.247 回答