使用 ZXing 和 ZBar 的 GS1 应用程序标识符数据中缺少 AIM 符号标识符

2024-04-16

我正在尝试验证使用 ZXing 或 ZBar 扫描的 GS1 条形码。这GS1 一般规格 http://www.gs1.org/docs/gsmp/barcodes/GS1_General_Specifications.pdf7.8 中说 GS1 条形码 必须使用特定的符号标识符进行传输:

  • ]C1= GS1-128
  • ]e0= GS1 DataBar 和 GS1 复合符号
  • ]d2= GS1 数据矩阵
  • ]Q3= GS1 二维码

但 ZXing 只显示 Code 128 的符号标识符(带或不带)--gs1),其余的不做。 ZBar 根本不显示符号标识符。

我对规范的理解是否正确?

有没有办法用 ZXing 或 ZBar 从条形码中提取这些标识符?

通常的手持式扫描仪会查看这些符号标识符吗?


您对规范的理解确实是正确的。这些库不遵循“FNC1 在第一位置”所需的传输协议,即 GS1 模式。

条形码符号标准是规定性的:修改后的 AIM 符号标识符的传输是通用 ISO 符号标准的强制性部分,而不仅仅是 GS1 应用标准。

这些单独的标准没有尝试描述传输协议运行的总体框架,让读者根据不完整的情况猜测某些决策的原因。此外,由于历史原因,这些标准预设了一种假设情况,其中条形码读取器通过物理字节模式接口连接到主机。

手持式扫描仪通常可以配置为发出 AIM 符号标识符(或某些专有等效标识符)作为传输消息的前缀,并且通常会严格遵守规定的传输协议。

然而,典型的解码器开发人员现在正在为既托管最终用户应用程序又包含集成摄像头的设备编写库,因此执行传输协议的“线路”是不存在的。开发人员忽略意图不明确的标准的基本特征是可以理解的,但这样做会在解码某些类型的数据时产生歧义。

某些类型的数据(例如 GS1 应用标识符语法)需要显式激活标志,该标志通过修改 AIM 符号标识符来规范地发出信号。除了识别扫描条形码的通用格式之外,解码器库的 API 很少提供对符号标识符指示的功能的完全替代。例如,设备 API 通常缺乏 GS1 模式和 ECI 协议扩展的信令。

一个相关问题是解码器库经常忽略将条形码消息的第三个及后续字符位置中的 FNC1 字符作为 GS(ASCII 值 29)发送,从而无法解码 GS1 AI 语法消息。更少的图书馆在 QR 码符号中传输“%”字符,其中 GS1 模式被激活为 GS。这些实现根本不符合符号标准。

ZXing 到 C++ 的端口 (zxing-cpp) 的维护者正在积极与条形码标准制定社区合作,以确保正确遵守符号标准。因此,ZXing(Java)以及包装器和绑定生态系统应该会在适当的时候从这些改进中受益。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ZXing 和 ZBar 的 GS1 应用程序标识符数据中缺少 AIM 符号标识符 的相关文章

  • 通过 zxing 扫描意图传递额外数据

    我正在使用集成条形码扫描仪https github com zxing https github com zxing 我想传递一些额外的数据 uuid下面 以及条形码 Both uuid1 and uuid2低于收益率null 我缺少什么
  • 用python从左到右解码二维码

    我有一个带有几个二维码的 png 基本上看起来像这样 解码我使用的二维码zbarlight from PIL import Image import zbarlight file path tests qr codes png with o
  • 在 Web 应用程序中使用条形码渲染框架生成条形码

    我正在使用条形码渲染框架来生成条形码 我已经下载了他们的dll 我可以看到 如何在 Windows 应用程序中完成它 我想做同样的事情 即生成条形码并在网络应用程序中使用它 以下是可以使用的问题的链接 适用于 NET 的免费条形码 API
  • 如何省略 128C 条形码中的前导 0?

    例如 如果我将 12345 放入 文本 条形码的属性中 则输出为 012345 这个 0 就是问题所在 我怎样才能删除这个 我正在使用 Delphi 2010 和 FastReport 4 9 72 Code 128C 条形码的位数必须为偶
  • 如何使用zxing条码扫描库解码EAN128条码

    我正在尝试使用 zxing 条码扫描库读取 EAN128 条码 我在 Xamarin 共享项目中使用它 如下所示 private async void OnButtonForBarcodeReadPressed object sender
  • 为 Python 3.x 编译 zbar

    几年前 我花了一些时间寻找一种方法zbar使用 Python 2 7 Windows x64 我发布了这个工作解决方案 如何在 最好是纯 Python 中解码 QR 码图像 https stackoverflow com questions
  • 如何在 Fragment 上启动 Zxing?

    我有一个包含两个片段的活动 我想在其中一个片段上运行 ZXING 扫描仪 目前我在另一项类似的活动中这样做 gt new IntentIntegrator this initiateScan opens up Scan intent gt
  • 如何从图像中读取条形码[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个图书馆 技术或关于如何阅读的建议EAN 13 http en wikipedia org wiki EAN 13图像中的条形
  • Java Android 激光条码扫描器

    我正在尝试开发一个能够读取条形码 1d 而不是 qr 的应用程序 真正的问题是 常见的条形码阅读器软件非常有用 但它们似乎太慢 无法作为非常频繁和常见的功能使用 这些条形码相当长 有 20 30 位数字 对于 zxing 等应用程序来说似乎
  • GS1-128条码解析

    扫描仪型号 Motorola DS4208 HC 我们需要解析 GS1 128 条形码 我们知道他们将使用 GTIN 01 批号 10 有效期 17 序列号 21 输入字符串 01 07612345678900 17 100503 10 A
  • 在 (ubuntu) linux 中捕获第二个键盘输入

    我编写了一个从 USB 第二个键盘 实际上是条形码扫描仪 获取输入的程序 问题是 如果另一个窗口处于活动状态 则数据会在那里输入 而不是在我的程序中输入 有人可以就我做错的事情给我建议吗 include
  • 将 Spotify URI 编码为 Spotify 代码

    Spotify 代码 https www spotifycodes com index html 是一些小条形码 可让您共享歌曲 艺术家 用户 播放列表等 它们在 条 的不同高度中编码信息 23 个条可以有 8 个离散高度 这意味着 8 2
  • Android:将 RGB888 转换为 Y800

    我正在从 vuforia 获取作为 RGB888 bytes 捕获的图像 我想将其传递给 zbar 它期望格式为 Y800 我怎样才能做到这一点 i tried Image barcode new Image width height RG
  • 使用zxing时找不到类

    所以我正在开发一个可以扫描二维码的应用程序 我下载了 ZXing 库 使用 apache ant 构建它来获取 core jar 将其放入我的项目文件夹中并将其作为 jar 添加到构建路径中 当我尝试执行以下操作时不 Intent inte
  • heroku无法安装zbar

    我有一个 Django 应用程序 它使用 zbar 进行条形码识别 它在我的开发人员机器上运行良好 但当我尝试将其部署到 Heroku 时 我的提交被拒绝 并显示以下消息 Installing collected packages zbar
  • 如何在二维码上添加徽标

    我正在使用 zxing java 生成二维码 想知道一种向二维码添加徽标的方法 是否有任何内置方法可以为其添加徽标或任何替代方法 您可能必须使用另一个图像库添加图像覆盖 我设法找到了能够做到这一点的资源 http skrymerdev wo
  • 附加到条形码应用程序中多个按钮的侦听器中出现异常

    好的 我正在开发一款内部条形码扫描仪 供我的公司在移动计算机和设备时使用 经过一番尝试和错误后 我目前几乎已经通过 Intent 设置了 Zxing 条码扫描仪 这就是我正在尝试做的事情 旁边三个EditText我有三个领域ImageBut
  • 将 ZXing 库直接集成到我的 Android 应用程序中

    我写这篇文章纯粹是出于绝望 我被指派为 Android 1 6 手机制作一个独立的条形码扫描仪 作为概念证明 为此我发现了 ZXing 库 我用谷歌搜索过 在 StackOverflow 上阅读相关主题 使用常识等等 似乎没有任何帮助 我就
  • 将 tiff 像素长宽比更改为正方形

    我正在尝试对多页 tiff 文件执行条形码识别 但是 tiff 文件是从传真服务器 我无法控制 发送给我的 该服务器以非方形像素长宽比保存 tiff 这导致图像由于纵横比而被严重挤压 我需要将 tiff 转换为方形像素长宽比 但不知道如何在
  • Zxing库无法解析

    我正在使用 zxing 库开发应用程序 我导入了zxing项目到我的工作场所 当我导入时遇到了一些问题 通过编译项目java 1 7 我做到了 CameraConfigurationUtils失踪 我从library source Reso

随机推荐

  • flutter ios 应用程序在 xcode 上运行,但无法在 vscode 和 android studio 上运行

    我的应用程序在 android 和 ios 上完美运行 仅使用 xcode 由于某种原因 当我使用 vsCode 或 Android studio 运行它时 它返回一个错误 Launching lib main dart on iPhone
  • 动态透视查询,无需将查询存储为字符串

    我完全熟悉链接中用于执行动态数据透视查询的以下方法 是否有另一种方法可以执行动态透视 而无需将查询存储为字符串并在其中插入列字符串 http www simple talk com community blogs andras archiv
  • 无法运行 Hyperloop 项目

    我已经从 master 下载了最新的 SDK 如下所述 http builds appcelerator com master http builds appcelerator com master 我还从这里下载了最新的 Hyperloo
  • 忽略 shell 脚本中的特定错误

    我有一小段 shell 脚本 它可能会引发许多错误 我当前将脚本设置为在出现所有错误时全局停止 不过我希望这个小部分略有不同 这是片段 recover database using backup controlfile until canc
  • C# 中的辅助方法:静态还是非静态?

    我有一个包含一些函数的类 这些函数实际上只是客户端代码可以使用其他公共访问器属性 方法自行完成的 帮助器 方法 并且我尚未决定是否应该使用 getter 实例将它们定义为属性方法 或将实例作为参数的静态方法 此外 我还从类中提取了一个接口
  • 如何使用 selenium webdriver 检查弹出窗口是否存在?

    我正在一个应用程序上运行链接测试 其中一个链接会弹出一个登录弹出窗口 有办法检查吗 我尝试将其视为警报 但没有成功 try WebDriverWait wait new WebDriverWait driver 2 wait until E
  • 图表轴标签格式VBA设置

    我正在编写 vb 脚本来生成图表 在 X 轴上有日期 在 Y 轴上有温度 在 X 轴上 我想以 dd mm 格式显示时间 我的数据如下所示 2014 06 17 01 00 2014 06 17 02 00 2014 06 17 03 00
  • MainWindow 对象没有属性“connect”

    我想知道是否有人可以帮助我解决有关 PyQt5 中插槽连接的问题 下面的代码片段将告诉你我的问题是什么 class MainWindow QMainWindow def init self super MainWindow self ini
  • 从 DialogFragment 设置状态栏颜色

    我正在创建一个动态更改状态栏颜色的应用程序 当从任何片段调用时 我在主 Activity 类中的方法都可以正常工作 片段放置在 Activity pager 中 public void setStatusBarColorIfPossible
  • 正在发生 mongoDB 写入,然后读取必须等待或不等待

    当 mongoDB 写入发生时 读取必须等待或不等待 当 mongoDB 要在 mongodb 中写入一些文档时 会发生写锁并且 其他线程尝试读取其他文档 那么它应该等待直到写锁释放或不释放 所有读锁和写锁之间是否存在依赖关系 来自docs
  • boost::Optional 到 bool 的转换

    如何防止该代码的最后一行编译 include
  • 如何从 openssl 生成的密钥生成 X.509 证书

    我有一个在 ec2 实例上运行的 Web 服务器 该实例在内部调用使用 Spring Boot 构建的 REST 服务器 现在 我正在尝试让此 REST 服务器在 SSL 下运行 这是我到目前为止所做的 1 使用此命令创建 CSR 和密钥文
  • 我该如何解决这个错误?字段从未分配并且始终具有空值[重复]

    这个问题在这里已经有答案了 我创建了 4 个 C 脚本 当我运行 2d unity 游戏时 我在控制台中看到此警告 Assets Scripts GameHandler cs 7 34 警告 CS0649 字段 GameHandler ca
  • 使用 spring-data-rest 定义路径“/{resourcename}/search/”的自定义方法

    我很困惑 我无法找到如何将自定义 搜索 方法与在 spring data rest 的帮助下加载的方法一起定义 您能回答我吗 该框架是否具有 开箱即用 的可能性 如果有的话 你能告诉我 在哪里可以找到它吗 为了更深入地了解我的情况 我描述了
  • Meteor.http.call 不允许 Access-Control-Allow-Origin

    当我尝试使用 Meteor 调用外部服务器进行 JSON 查询时Meteor http call GET 方法我收到错误消息 Access Control Allow Origin不允许 如何允许我的 Meteor 应用程序向其他服务器发出
  • Rails:最后以空值排序

    在我的 Rails 应用程序中 我多次遇到一个问题 我想知道其他人是如何解决的 我有某些记录 其中值是可选的 因此某些记录具有值 而某些记录对该列为空 如果我在某些数据库上按该列排序 则空值首先排序 而在某些数据库上 空值最后排序 例如 我
  • 使用假 DbContext 和 Autofixture 以及 Moq 进行测试

    所以请遵循这个例子 example http romiller com 2012 02 14 testing with a fake dbcontext 以及如何制作一个假的 DBContext 来测试我的测试 使用这个工作正常 Test
  • sqlite python 插入

    我以前问过类似的问题 这里是我想要实现的目标的详细解释 我有两个 sqlite 表table1 是标准表 具有服务器 id 状态等字段 table2 具有服务器 id 状态 数字 日志文件等字段 Table2 为空 Table1 有值 我正
  • 获取连接的mysql数据库名称(JDBC)

    如何从连接对象中获取数据库名称 try this ds DataSource new InitialContext lookup java comp env jdbc amger catch NamingException ne Conne
  • 使用 ZXing 和 ZBar 的 GS1 应用程序标识符数据中缺少 AIM 符号标识符

    我正在尝试验证使用 ZXing 或 ZBar 扫描的 GS1 条形码 这GS1 一般规格 http www gs1 org docs gsmp barcodes GS1 General Specifications pdf7 8 中说 GS