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


Java BitMatrix.getEnclosingRectangle方法代码示例

本文整理汇总了Java中com.google.zxing.common.BitMatrix.getEnclosingRectangle方法的典型用法代码示例。如果您正苦于以下问题:Java BitMatrix.getEnclosingRectangle方法的具体用法?Java BitMatrix.getEnclosingRectangle怎么用?Java BitMatrix.getEnclosingRectangle使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.google.zxing.common.BitMatrix的用法示例。


在下文中一共展示了BitMatrix.getEnclosingRectangle方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: updateBit

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
/**
 * Get BitMatrix
 *
 * @param matrix BitMatrix
 * @param margin margin
 * @return BitMatrix
 */
public static BitMatrix updateBit(BitMatrix matrix, int margin) {
    int tempM = margin * 2;
    int[] rec = matrix.getEnclosingRectangle();   //Gets the properties of the two-dimensional code pattern
    int resWidth = rec[2] + tempM;
    int resHeight = rec[3] + tempM;
    BitMatrix resMatrix = new BitMatrix(resWidth, resHeight); //Generates a new BitMatrix according to the custom borders
    resMatrix.clear();
    for (int i = margin; i < resWidth - margin; i++) {   //Loop to draw the 2D code pattern into the new bitMatrix
        for (int j = margin; j < resHeight - margin; j++) {
            if (matrix.get(i - margin + rec[0], j - margin + rec[1])) {
                resMatrix.set(i, j);
            }
        }
    }
    return resMatrix;
}
 
开发者ID:Jusenr,项目名称:androidtools,代码行数:24,代码来源:QRCodeUtils.java

示例2: extractPureBits

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
/**
 * This method detects a code in a "pure" image -- that is, pure monochrome image
 * which contains only an unrotated, unskewed, image of a code, with some white border
 * around it. This is a specialized method that works exceptionally fast in this special
 * case.
 *
 * @see com.google.zxing.datamatrix.DataMatrixReader#extractPureBits(BitMatrix)
 * @see com.google.zxing.qrcode.QRCodeReader#extractPureBits(BitMatrix)
 */
private static BitMatrix extractPureBits(BitMatrix image) throws NotFoundException {
  
  int[] enclosingRectangle = image.getEnclosingRectangle();
  if (enclosingRectangle == null) {
    throw NotFoundException.getNotFoundInstance();
  }
  
  int left = enclosingRectangle[0];
  int top = enclosingRectangle[1];
  int width = enclosingRectangle[2];
  int height = enclosingRectangle[3];

  // Now just read off the bits
  BitMatrix bits = new BitMatrix(MATRIX_WIDTH, MATRIX_HEIGHT);
  for (int y = 0; y < MATRIX_HEIGHT; y++) {
    int iy = top + (y * height + height / 2) / MATRIX_HEIGHT;
    for (int x = 0; x < MATRIX_WIDTH; x++) {
      int ix = left + (x * width + width / 2 + (y & 0x01) *  width / 2) / MATRIX_WIDTH;
      if (image.get(ix, iy)) {
        bits.set(x, y);
      }
    }
  }
  return bits;
}
 
开发者ID:amap-demo,项目名称:weex-3d-map,代码行数:35,代码来源:MaxiCodeReader.java

示例3: extractPureBits

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
private static BitMatrix extractPureBits(BitMatrix image) throws NotFoundException {
    int[] enclosingRectangle = image.getEnclosingRectangle();
    if (enclosingRectangle == null) {
        throw NotFoundException.getNotFoundInstance();
    }
    int left = enclosingRectangle[0];
    int top = enclosingRectangle[1];
    int width = enclosingRectangle[2];
    int height = enclosingRectangle[3];
    BitMatrix bits = new BitMatrix(30, 33);
    for (int y = 0; y < 33; y++) {
        int iy = top + (((y * height) + (height / 2)) / 33);
        for (int x = 0; x < 30; x++) {
            if (image.get(left + ((((x * width) + (width / 2)) + (((y & 1) * width) / 2)) /
                    30), iy)) {
                bits.set(x, y);
            }
        }
    }
    return bits;
}
 
开发者ID:JackChan1999,项目名称:boohee_v5.6,代码行数:22,代码来源:MaxiCodeReader.java

示例4: deleteWhite

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
public static BitMatrix deleteWhite(BitMatrix matrix){
	int[] rec = matrix.getEnclosingRectangle();
	int resWidth = rec[2] + 1;
	int resHeight = rec[3] + 1;

	BitMatrix resMatrix = new BitMatrix(resWidth, resHeight);
	resMatrix.clear();
	for (int i = 0; i < resWidth; i++) {
		for (int j = 0; j < resHeight; j++) {
			if (matrix.get(i + rec[0], j + rec[1]))
				resMatrix.set(i, j);
		}
	}
	return resMatrix;
}
 
开发者ID:thlws,项目名称:payment-wechat,代码行数:16,代码来源:ZxingUtil.java


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