2021SC@SDUSC-Zxing(八):解码关键类详解-Result

2021SC@SDUSC

文章目录

    • 一、有关方法
    • 二、两个枚举类
      • 一、BarcodeFormat
      • 二、ResultMetadataType
    • 三、调用实例

截止到上篇博客,Zxing的关键解码部分基本解释完毕,这一篇博客主要讲解返回文本内容的方法,不涉及复杂算法,因此只介绍如何调用。

一、有关方法

2021SC@SDUSC-Zxing(八):解码关键类详解-Result_第1张图片
2021SC@SDUSC-Zxing(八):解码关键类详解-Result_第2张图片
注:构造方法中提及的ResultPoint中存放的就是上图标明的辨识二维码的标志位的坐标信息

二、两个枚举类

一、BarcodeFormat

这里提到的格式基本都在博客(一)中有介绍

/*枚举此包已知的条形码格式。*/
public enum BarcodeFormat {
  /*Aztec二维条码格式*/
  AZTEC,
  /*CODABAR 1D 格式*/
  CODABAR,
  /*Code 39 1D 格式*/
  CODE_39,
  /*Code 93 1D 格式*/
  CODE_93,
  /*Code 128 1D 格式*/
  CODE_128,
  /*Data Matrix 二维码格式*/
  DATA_MATRIX,
  /** EAN-8 1D 格式. */
  EAN_8,
  /** EAN-13 1D format. */
  EAN_13,
  /** ITF (Interleaved Two of Five) 1D 格式. */
  ITF,
  /*MaxiCode 二维码格式*/
  MAXICODE,
  /*PDF417 格式*/
  PDF_417,
  /*QR Code 二维码格式*/
  QR_CODE,
  /** RSS 14 */
  RSS_14,
  /** RSS EXPANDED */
  RSS_EXPANDED,
  /** UPC-A 1D format. */
  UPC_A,
  /** UPC-E 1D format. */
  UPC_E,
  /** UPC/EAN extension format. Not a stand-alone format. */
  UPC_EAN_EXTENSION
}

常见一维条码编码格式介绍
在线条码生成器
常见二维条码编码格式介绍

二、ResultMetadataType

/*表示解码器想要向调用者传回的有关解码结果的类型。*/
public enum ResultMetadataType {
  /*未指定的、特定于应用程序的元数据。映射到未指定的对象。*/
  OTHER,
  
  /**表示图像中条码可能的近似方向。这个值以从正常的垂直方向顺时针旋转的角度给出。例如,一个从上到下读取的1D条形码将被认为具有“90”方向。这个键映射到一个Integer,其值在[0,360]范围内。*/
  ORIENTATION,
  
  /**
   *2D条码格式通常对文本进行编码,但也允许一种“字节模式”,这种模式有时被用于编码二进制数据。
   *虽然Result在这些格式的条形码中提供了完整的原始字节,但它并不只提供来自字节段的字节。
   *这将映射到一个字节数组列表,该列表对应于条形码中字节段中的原始字节。*/
  BYTE_SEGMENTS,

  /*如果适用,表示使用的错误校正级别。值类型取决于格式,但通常是String类型。*/
  ERROR_CORRECTION_LEVEL,

  /*对于某些期刊,用整数表示期刊号。*/
  ISSUE_NUMBER,

  /*对于某些产品,将条形码中的建议零售价表示为格式化字符串。*/
  SUGGESTED_PRICE,

  /*对于某些产品,可能的生产国家用字符串表示ISO国家代码。有些地图指向多个可能的国家,比如“US/CA”。*/
  POSSIBLE_COUNTRY,

  /*对于某些产品,扩展文本*/
  UPC_EAN_EXTENSION,

  /*PDF417特定元数据*/
  PDF417_EXTRA_METADATA,

  /*如果代码格式支持结构化追加,并且当前扫描的代码是其中的一部分,那么序列号就会被给出
*/
  STRUCTURED_APPEND_SEQUENCE,

  /*如果代码格式支持结构化追加,并且当前扫描的代码是其中的一部分,那么奇偶校验就会给出。*/
  STRUCTURED_APPEND_PARITY,

  /**
   * 条形码符号标识符。
   * 注:根据GS1规范,标识符在添加到条形码内容之前可能必须替换FNC1/GS字符的前导。
   */
  SYMBOLOGY_IDENTIFIER,
}

三、调用实例

①用构造函数的方式调用(不常用,一般出现在测试样例里)
在这里插入图片描述
输出结果:
2021SC@SDUSC-Zxing(八):解码关键类详解-Result_第3张图片

②将Reader解码结果赋值给Result,这是在实际应用中调用Result的常用方式
在安卓中:在这里插入图片描述

在javase中:
2021SC@SDUSC-Zxing(八):解码关键类详解-Result_第4张图片
在我们第一篇尝试运行Zxing的案例中:
在这里插入图片描述
输出结果:在这里插入图片描述

欢迎提出宝贵意见,感谢观看!
参考: ZxingAPI

你可能感兴趣的:(Zxing,java)