首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Code128条形码规范中是否需要校验和?

Code128条形码规范中是否需要校验和?
EN

Stack Overflow用户
提问于 2018-11-01 09:46:30
回答 1查看 5.7K关注 0票数 4

引言

第一步

我试着用移动条形码阅读器和在线工具读取条形码(见下图),得到了它: data - 30925018,可视化算法- Code128C

第二步

然后,我尝试从给定的数据生成条形码,并得到以下图像:

原始条形码

生成条形码

第三步

正如你所看到的,图像是不同的。所以,我决定自己解密。结果如下:

原解密条形码

生成解密条形码

С板

  1. 正如维基百科所说(128): 校验数字是加权模-103校验和.计算方法是将起始代码“值”和每个符号的“值”的乘积乘以其在条形码字符串中的位置。
  2. 我试图通过应用程序中的Java库和在线工具从给定的数据中生成条形码。都给了我同样的结果。

问题

  1. 为什么在线工具会在没有校验和的情况下生成条形码,但最终会使用FNC1?
  2. 为什么条形码开头有一个FNC1?
  3. Code128规范是否需要校验和?

我的思想

  • 我认为GS1-128规范可能是条形码开头FNC1的原因。
  • 最后的FNC1可以只是一个校验和。这只是个巧合。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-01 16:17:52

原始映像是一个GS1-128 (以前的EAN-128),它表示以下GS1应用程序标识符格式化的数据:

代码语言:javascript
运行
复制
(30)925018

意思是计数项目: 925018。

  • 我认为GS1-128规范可能是条形码开头FNC1的原因。

对,是这样。根据定义,以第一位置的FNC1字符开头的代码128是GS1-128,因此应该包含根据GS1规范编码的数据。

下面的答案中提供的背景描述了这种编码的原则:https://stackoverflow.com/a/31760872/2568535

  • 最后的FNC1可以只是一个校验和。

校验和在代码128规范(以及任何派生的应用程序标准)中是强制性的,通常不会在任何可读的文本中显示。在您生成的符号(不是GS1-128,因为没有"FNC1 In first")中,如果校验和字符恰好与FNC1匹配,这只是巧合,尽管正如Brian所指出的--它不是。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53098714

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档