当前位置: 首页>>代码示例>>Java>>正文


Java Version类代码示例

本文整理汇总了Java中com.google.zxing.qrcode.decoder.Version的典型用法代码示例。如果您正苦于以下问题:Java Version类的具体用法?Java Version怎么用?Java Version使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


Version类属于com.google.zxing.qrcode.decoder包,在下文中一共展示了Version类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: chooseMaskPattern

import com.google.zxing.qrcode.decoder.Version; //导入依赖的package包/类
private static int chooseMaskPattern(BitArray bits,
                                     ErrorCorrectionLevel ecLevel,
                                     Version version,
                                     ByteMatrix matrix) throws WriterException {

  int minPenalty = Integer.MAX_VALUE;  // Lower penalty is better.
  int bestMaskPattern = -1;
  // We try all mask patterns to choose the best one.
  for (int maskPattern = 0; maskPattern < QRCode.NUM_MASK_PATTERNS; maskPattern++) {
    MatrixUtil.buildMatrix(bits, ecLevel, version, maskPattern, matrix);
    int penalty = calculateMaskPenalty(matrix);
    if (penalty < minPenalty) {
      minPenalty = penalty;
      bestMaskPattern = maskPattern;
    }
  }
  return bestMaskPattern;
}
 
开发者ID:amap-demo,项目名称:weex-3d-map,代码行数:19,代码来源:Encoder.java

示例2: chooseVersion

import com.google.zxing.qrcode.decoder.Version; //导入依赖的package包/类
private static Version chooseVersion(int numInputBits, ErrorCorrectionLevel ecLevel) throws WriterException {
  // In the following comments, we use numbers of Version 7-H.
  for (int versionNum = 1; versionNum <= 40; versionNum++) {
    Version version = Version.getVersionForNumber(versionNum);
    // numBytes = 196
    int numBytes = version.getTotalCodewords();
    // getNumECBytes = 130
    Version.ECBlocks ecBlocks = version.getECBlocksForLevel(ecLevel);
    int numEcBytes = ecBlocks.getTotalECCodewords();
    // getNumDataBytes = 196 - 130 = 66
    int numDataBytes = numBytes - numEcBytes;
    int totalInputBytes = (numInputBits + 7) / 8;
    if (numDataBytes >= totalInputBytes) {
      return version;
    }
  }
  throw new WriterException("Data too big");
}
 
开发者ID:amap-demo,项目名称:weex-3d-map,代码行数:19,代码来源:Encoder.java

示例3: maybeEmbedVersionInfo

import com.google.zxing.qrcode.decoder.Version; //导入依赖的package包/类
static void maybeEmbedVersionInfo(Version version, ByteMatrix matrix) throws WriterException {
  if (version.getVersionNumber() < 7) {  // Version info is necessary if version >= 7.
    return;  // Don't need version info.
  }
  BitArray versionInfoBits = new BitArray();
  makeVersionInfoBits(version, versionInfoBits);

  int bitIndex = 6 * 3 - 1;  // It will decrease from 17 to 0.
  for (int i = 0; i < 6; ++i) {
    for (int j = 0; j < 3; ++j) {
      // Place bits in LSB (least significant bit) to MSB order.
      boolean bit = versionInfoBits.get(bitIndex);
      bitIndex--;
      // Left bottom corner.
      matrix.set(i, matrix.getHeight() - 11 + j, bit);
      // Right bottom corner.
      matrix.set(matrix.getHeight() - 11 + j, i, bit);
    }
  }
}
 
开发者ID:amap-demo,项目名称:weex-3d-map,代码行数:21,代码来源:MatrixUtil.java

示例4: maybeEmbedPositionAdjustmentPatterns

import com.google.zxing.qrcode.decoder.Version; //导入依赖的package包/类
private static void maybeEmbedPositionAdjustmentPatterns(Version version, ByteMatrix matrix) {
  if (version.getVersionNumber() < 2) {  // The patterns appear if version >= 2
    return;
  }
  int index = version.getVersionNumber() - 1;
  int[] coordinates = POSITION_ADJUSTMENT_PATTERN_COORDINATE_TABLE[index];
  int numCoordinates = POSITION_ADJUSTMENT_PATTERN_COORDINATE_TABLE[index].length;
  for (int i = 0; i < numCoordinates; ++i) {
    for (int j = 0; j < numCoordinates; ++j) {
      int y = coordinates[i];
      int x = coordinates[j];
      if (x == -1 || y == -1) {
        continue;
      }
      // If the cell is unset, we embed the position adjustment pattern here.
      if (isEmpty(matrix.get(x, y))) {
        // -2 is necessary since the x/y coordinates point to the center of the pattern, not the
        // left top corner.
        embedPositionAdjustmentPattern(x - 2, y - 2, matrix);
      }
    }
  }
}
 
开发者ID:amap-demo,项目名称:weex-3d-map,代码行数:24,代码来源:MatrixUtil.java

示例5: maybeEmbedPositionAdjustmentPatterns

import com.google.zxing.qrcode.decoder.Version; //导入依赖的package包/类
private static void maybeEmbedPositionAdjustmentPatterns(Version version, ByteMatrix matrix) {
    if (version.getVersionNumber() >= 2) {
        int index = version.getVersionNumber() - 1;
        int[] coordinates = POSITION_ADJUSTMENT_PATTERN_COORDINATE_TABLE[index];
        int numCoordinates = POSITION_ADJUSTMENT_PATTERN_COORDINATE_TABLE[index].length;
        for (int i = 0; i < numCoordinates; i++) {
            for (int j = 0; j < numCoordinates; j++) {
                int y = coordinates[i];
                int x = coordinates[j];
                if (!(x == -1 || y == -1 || !isEmpty(matrix.get(x, y)))) {
                    embedPositionAdjustmentPattern(x - 2, y - 2, matrix);
                }
            }
        }
    }
}
 
开发者ID:JackChan1999,项目名称:boohee_v5.6,代码行数:17,代码来源:MatrixUtil.java

示例6: maybeEmbedPositionAdjustmentPatterns

import com.google.zxing.qrcode.decoder.Version; //导入依赖的package包/类
private static void maybeEmbedPositionAdjustmentPatterns(Version version, ByteMatrix matrix) {
  if (version.getVersionNumber() < 2) {  // The patterns appear if version >= 2
    return;
  }
  int index = version.getVersionNumber() - 1;
  int[] coordinates = POSITION_ADJUSTMENT_PATTERN_COORDINATE_TABLE[index];
  for (int y : coordinates) {
    if (y >= 0) {
      for (int x : coordinates) {
        if (x >= 0 && isEmpty(matrix.get(x, y))) {
          // If the cell is unset, we embed the position adjustment pattern here.
          // -2 is necessary since the x/y coordinates point to the center of the pattern, not the
          // left top corner.
          embedPositionAdjustmentPattern(x - 2, y - 2, matrix);
        }
      }
    }
  }
}
 
开发者ID:simplezhli,项目名称:Tesseract-OCR-Scanner,代码行数:20,代码来源:MatrixUtil.java


注:本文中的com.google.zxing.qrcode.decoder.Version类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。