gpt4 book ai didi

barcode - Code128 条码规范中是否需要校验和?

转载 作者:行者123 更新时间:2023-12-01 11:15:05 38 4
gpt4 key购买 nike

介绍

第1步

我尝试使用移动条码阅读器和在线工具读取条码(见下图)并得到它:数据 - 30925018 , 可视化算法 - Code128C

第2步

然后我尝试从给定的数据生成一个条形码并得到这些图像:

Original barcode
原始条码

Generated barcode
生成的条码

第 3 步

如您所见,图像是不同的。所以,我决定自己解密。结果如下:

Original decrypted barcode
原始解密条码

Generated decrypted barcode
生成的解密条码

澄清

  • 正如维基百科所说( https://en.wikipedia.org/wiki/Code_128 ):

    The check digit is a weighted modulo-103 checksum. It is calculated by summing the start code 'value' to the products of each symbol's 'value' multiplied by its position in the barcode string.

  • 我尝试通过应用程序中的 Java 库和在线工具从给定数据生成条形码。两者都给了我相同的结果。

  • 问题
  • 为什么在线工具生成没有校验和的条形码,但最后带有 FNC1?
  • 为什么条码开头有一个FNC1?
  • Code128 规范是否需要校验和?

  • 我的想法
  • 我想 GS1-128规范可能是条码开头的 FNC1 的原因
  • 最后的 FNC1 可以只是一个校验和。这只是一个巧合。
  • 最佳答案

    原始图像是 GS1-128(以前称为 EAN-128),代表以下 GS1 应用程序标识符格式的数据:

    (30)925018

    含义是项目数:925018。

    • I think GS1-128 specification can be cause of FNC1 at the beginning of the barcode


    正确的。根据定义,以 FNC1 字符开头的 Code 128 是 GS1-128,因此应包含根据 GS1 规范编码的数据。

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

    • FNC1 at the end can be just a checksum.


    校验和在 Code 128 规范(和任何衍生应用标准)中是强制性的,通常不会以任何人类可读的文本显示。在您生成的符号中(不是 GS1-128,因为首先没有“FNC1”),如果校验和字符碰巧与 FNC1 匹配,那只是巧合,尽管 - 正如布赖恩·安德森(Brian Anderson)所指出的那样 - 事实并非如此。

    关于barcode - Code128 条码规范中是否需要校验和?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53098714/

    38 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com