首页 > 解决方案 > 如何在 iOS 上读取 11 位 UPC 代码而无需设备添加额外数字?

问题描述

我在 iOS 中使用 VNBarcodeObservation 编写了一个简单的条形码应用程序......它在 12 位和 13 位 UPC 上运行良好。但是,当我扫描 UPC 中具有 11 位数字的旧《星球大战》玩具时,它会在 UPC 中添加第 12 位数字。例如,代码“07628169570”被解释为“076281695709”(添加了末尾的9)。如果我说 11 位数字代码是 UPCA,网站barcode.tex-it.com 也会做同样的事情(请参阅链接 - https://barcode.tec-it.com/en/UPCA?data=07628169570) - 似乎它试图强制 11 位条形码充当 12 位 UPCA,这不是我想要的......我希望它读取 11 位......我能做些什么来强制 VNBarcodeObservation只看11位数字?简单地删除最后一个字符不是一种选择,因为我还需要该应用程序来读取 12 位条形码。我觉得我应该能够让应用程序在 11 位代码上使用不同的符号系统,但我不确定如何。谢谢。

标签: iosbarcodebarcode-scanner

解决方案


没有 11 位 UPC-A。
UPC-A的规格为12位,13位兼容EAN。

通用产品代码 - 维基百科
国际文章编号

您使用的 Web 服务站点输入了 11 位数据作为 UPC-A,因此它可能补充了校验位并显示了正确的 UPC-A 条形码。
比如票据打印机的条码打印功能,就有这样一个补充过程。


如果 11 位数字打印附有条形码(有称为人类可读的解释字符),它可能会省略校验位。

可以想象,我们有一个独特的操作,该操作会产生差异,以区分条形码由扫描仪设备读取的情况和人工输入的情况。

如果由人输入,应用程序不会自动计算校验位吗?
或者,也许您更改设置,使来自扫描仪设备的通知只有 11 位数字,并且已删除校验位。


如果您的产品具有 11 位 HRI 条码,请了解为什么它是 11 位。
您可能需要考虑一些规格。


推荐阅读