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


Java BitMatrix.getWidth方法代码示例

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


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

示例1: createQRCode

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
public static Bitmap createQRCode(String str,int widthAndHeight) throws WriterException {
	Hashtable<EncodeHintType, String> hints = new Hashtable<EncodeHintType, String>();  
       hints.put(EncodeHintType.CHARACTER_SET, "utf-8"); 
	BitMatrix matrix = new MultiFormatWriter().encode(str,
			BarcodeFormat.QR_CODE, widthAndHeight, widthAndHeight);
	int width = matrix.getWidth();
	int height = matrix.getHeight();
	int[] pixels = new int[width * height];
	
	for (int y = 0; y < height; y++) {
		for (int x = 0; x < width; x++) {
			if (matrix.get(x, y)) {
				pixels[y * width + x] = BLACK;
			}
		}
	}
	Bitmap bitmap = Bitmap.createBitmap(width, height,
			Bitmap.Config.ARGB_8888);
	bitmap.setPixels(pixels, 0, width, 0, 0, width, height);
	return bitmap;
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:22,代码来源:EncodingHandler.java

示例2: createImage

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
private static BufferedImage createImage(String content, String imgPath,
        boolean needCompress) throws Exception {
    Hashtable hints = new Hashtable();
    hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H);
    hints.put(EncodeHintType.CHARACTER_SET, CHARSET);
    hints.put(EncodeHintType.MARGIN, 1);
    BitMatrix bitMatrix = new MultiFormatWriter().encode(content,
            BarcodeFormat.QR_CODE, QRCODE_SIZE, QRCODE_SIZE, hints);
    int width = bitMatrix.getWidth();
    int height = bitMatrix.getHeight();
    BufferedImage image = new BufferedImage(width, height,
            BufferedImage.TYPE_INT_RGB);
    for (int x = 0; x < width; x++) {
        for (int y = 0; y < height; y++) {
            image.setRGB(x, y, bitMatrix.get(x, y) ? 0xFF000000
                    : 0xFFFFFFFF);
        }
    }
    if (imgPath == null || "".equals(imgPath)) {
        return image;
    }
 // 插入图片
    CodeUtil.insertImage(image, imgPath, needCompress);
    return image;
}
 
开发者ID:Fetax,项目名称:Fetax-AI,代码行数:26,代码来源:CodeUtil.java

示例3: Create2DCode

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
/**
 * 传入字符串生成二维码
 *
 * @param str
 * @return
 * @throws WriterException
 */
public static Bitmap Create2DCode(String str) throws WriterException {
    // 生成二维矩阵,编码时指定大小,不要生成了图片以后再进行缩放,这样会模糊导致识别失败
    BitMatrix matrix = new MultiFormatWriter().encode(str,
            BarcodeFormat.QR_CODE, 300, 300);
    int width = matrix.getWidth();
    int height = matrix.getHeight();
    // 二维矩阵转为一维像素数组,也就是一直横着排了
    int[] pixels = new int[width * height];
    for (int y = 0; y < height; y++) {
        for (int x = 0; x < width; x++) {
            if (matrix.get(x, y)) {
                pixels[y * width + x] = 0xff000000;
            }

        }
    }

    Bitmap bitmap = Bitmap.createBitmap(width, height,
            Bitmap.Config.ARGB_8888);
    // 通过像素数组生成bitmap,具体参考api
    bitmap.setPixels(pixels, 0, width, 0, 0, width, height);
    return bitmap;
}
 
开发者ID:hsj-xiaokang,项目名称:OSchina_resources_android,代码行数:31,代码来源:QrCodeUtils.java

示例4: encodeAsBitmap

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
public Bitmap encodeAsBitmap() throws WriterException {
    if (!encoded) return null;

    Map<EncodeHintType, Object> hints = null;
    String encoding = guessAppropriateEncoding(contents);
    hints = new EnumMap<EncodeHintType, Object>(EncodeHintType.class);
    if (encoding != null) {
        
        hints.put(EncodeHintType.CHARACTER_SET, encoding);
    }
    hints.put(EncodeHintType.MARGIN, 2); /* default = 4 */  
    
    
    MultiFormatWriter writer = new MultiFormatWriter();
    BitMatrix result = writer.encode(contents, format, dimension, dimension, hints);
    int width = result.getWidth();
    int height = result.getHeight();
    int[] pixels = new int[width * height];
    // All are 0, or black, by default
    for (int y = 0; y < height; y++) {
        int offset = y * width;
        for (int x = 0; x < width; x++) {
            pixels[offset + x] = result.get(x, y) ? BLACK : WHITE;
        }
    }

    Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
    bitmap.setPixels(pixels, 0, width, 0, 0, width, height);
    return bitmap;
}
 
开发者ID:PhilippC,项目名称:keepass2android,代码行数:31,代码来源:QRCodeEncoder.java

示例5: encodeAsBitmap

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
public Bitmap encodeAsBitmap() throws WriterException {
    if (!encoded) return null;

    Map<EncodeHintType, Object> hints = null;
    String encoding = guessAppropriateEncoding(contents);
    if (encoding != null) {
        hints = new EnumMap<>(EncodeHintType.class);
        hints.put(EncodeHintType.CHARACTER_SET, encoding);
    }
    MultiFormatWriter writer = new MultiFormatWriter();
    BitMatrix result = writer.encode(contents, format, dimension, dimension, hints);
    int width = result.getWidth();
    int height = result.getHeight();
    int[] pixels = new int[width * height];
    // All are 0, or black, by default
    for (int y = 0; y < height; y++) {
        int offset = y * width;
        for (int x = 0; x < width; x++) {
            pixels[offset + x] = result.get(x, y) ? BLACK : WHITE;
        }
    }

    Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
    bitmap.setPixels(pixels, 0, width, 0, 0, width, height);
    return bitmap;
}
 
开发者ID:uhuru-mobile,项目名称:mobile-store,代码行数:27,代码来源:QRCodeEncoder.java

示例6: toAscii

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
public static String toAscii(BitMatrix bitMatrix) {
	StringBuilder sb = new StringBuilder();
	for (int rows = 0; rows < bitMatrix.getHeight(); rows++) {
		for (int cols = 0; cols < bitMatrix.getWidth(); cols++) {
			boolean x = bitMatrix.get(rows, cols);
			if (!x) {
				// white
				sb.append("\033[47m  \033[0m");
			} else {
				sb.append("\033[40m  \033[0m");
			}
		}
		sb.append("\n");
	}
	return sb.toString();
}
 
开发者ID:zhangshanhai,项目名称:java-qrcode-terminal,代码行数:17,代码来源:QRterminal.java

示例7: createImage

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
private static BufferedImage createImage(String content, String imgPath,
        boolean needCompress) throws Exception {
    Hashtable hints = new Hashtable();
    hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H);
    hints.put(EncodeHintType.CHARACTER_SET, CHARSET);
    hints.put(EncodeHintType.MARGIN, 1);
    BitMatrix bitMatrix = new MultiFormatWriter().encode(content,
            BarcodeFormat.QR_CODE, QRCODE_SIZE, QRCODE_SIZE, hints);
    int width = bitMatrix.getWidth();
    int height = bitMatrix.getHeight();
    BufferedImage image = new BufferedImage(width, height,
            BufferedImage.TYPE_INT_RGB);
    for (int x = 0; x < width; x++) {
        for (int y = 0; y < height; y++) {
            image.setRGB(x, y, bitMatrix.get(x, y) ? 0xFF000000
                    : 0xFFFFFFFF);
        }
    }
    if (imgPath == null || "".equals(imgPath)) {
        return image;
    }
    // 插入图片
    QRCodeUtil.insertImage(image, imgPath, needCompress);
    return image;
}
 
开发者ID:HuiJa,项目名称:bicycleSharingServer,代码行数:26,代码来源:QRCodeUtil.java

示例8: moduleSize

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
private static float moduleSize(int[] leftTopBlack, BitMatrix image) throws NotFoundException {
  int height = image.getHeight();
  int width = image.getWidth();
  int x = leftTopBlack[0];
  int y = leftTopBlack[1];
  boolean inBlack = true;
  int transitions = 0;
  while (x < width && y < height) {
    if (inBlack != image.get(x, y)) {
      if (++transitions == 5) {
        break;
      }
      inBlack = !inBlack;
    }
    x++;
    y++;
  }
  if (x == width || y == height) {
    throw NotFoundException.getNotFoundInstance();
  }
  return (x - leftTopBlack[0]) / 7.0f;
}
 
开发者ID:amap-demo,项目名称:weex-3d-map,代码行数:23,代码来源:QRCodeReader.java

示例9: moduleSize

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
private static float moduleSize(int[] leftTopBlack, BitMatrix image) throws NotFoundException {
    int height = image.getHeight();
    int width = image.getWidth();
    int x = leftTopBlack[0];
    int y = leftTopBlack[1];
    boolean inBlack = true;
    int transitions = 0;
    while (x < width && y < height) {
        if (inBlack != image.get(x, y)) {
            transitions++;
            if (transitions == 5) {
                break;
            } else if (inBlack) {
                inBlack = false;
            } else {
                inBlack = true;
            }
        }
        x++;
        y++;
    }
    if (x != width && y != height) {
        return ((float) (x - leftTopBlack[0])) / 7.0f;
    }
    throw NotFoundException.getNotFoundInstance();
}
 
开发者ID:JackChan1999,项目名称:boohee_v5.6,代码行数:27,代码来源:QRCodeReader.java

示例10: createQRCode

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
public static Bitmap createQRCode(String str, int widthAndHeight) throws WriterException {
    Hashtable<EncodeHintType, String> hints = new Hashtable<EncodeHintType, String>();
    hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
    BitMatrix matrix = new MultiFormatWriter().encode(str,
            BarcodeFormat.QR_CODE, widthAndHeight, widthAndHeight);
    int width = matrix.getWidth();
    int height = matrix.getHeight();
    int[] pixels = new int[width * height];

    for (int y = 0; y < height; y++) {
        for (int x = 0; x < width; x++) {
            if (matrix.get(x, y)) {
                pixels[y * width + x] = BLACK;
            }
        }
    }
    Bitmap bitmap = Bitmap.createBitmap(width, height,
            Bitmap.Config.ARGB_8888);
    bitmap.setPixels(pixels, 0, width, 0, 0, width, height);
    return bitmap;
}
 
开发者ID:guxiaonian,项目名称:MeiLa_GNN,代码行数:22,代码来源:EncodingHandler.java

示例11: generateQRCode

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
/**
 *
 * @param amount
 */
public void generateQRCode(String amount) {

    String coinName = getBaseActivity().getLastSyncedMessage().getCoinName();

    String uriStr = coinName + ":" + _addr;
    if (amount != null && !amount.isEmpty()) {
        uriStr += "?amount="+amount;
    }

    try {
        QRCodeWriter writer = new QRCodeWriter();

        BitMatrix bitMatrix = writer.encode(uriStr, BarcodeFormat.QR_CODE, 512, 512);
        int width = bitMatrix.getWidth();
        int height = bitMatrix.getHeight();
        Bitmap bmp = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);
        for (int x = 0; x < width; x++) {
            for (int y = 0; y < height; y++) {
                bmp.setPixel(x, y, bitMatrix.get(x, y) ? Color.BLACK : Color.WHITE);
            }
        }

        _receiveFragmentView.getQrImg().setImageBitmap(bmp);
    } catch (WriterException e) {
        e.printStackTrace();
    }
}
 
开发者ID:ehanoc,项目名称:xwallet,代码行数:32,代码来源:ReceiveFragment.java

示例12: encodeAsBitmap

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
Bitmap encodeAsBitmap() throws WriterException {
  String contentsToEncode = contents;
  if (contentsToEncode == null) {
    return null;
  }
  Map<EncodeHintType,Object> hints = null;
  String encoding = guessAppropriateEncoding(contentsToEncode);
  if (encoding != null) {
    hints = new EnumMap<>(EncodeHintType.class);
    hints.put(EncodeHintType.CHARACTER_SET, encoding);
  }
  BitMatrix result;
  try {
    result = new MultiFormatWriter().encode(contentsToEncode, format, dimension, dimension, hints);
  } catch (IllegalArgumentException iae) {
    // Unsupported format
    return null;
  }
  int width = result.getWidth();
  int height = result.getHeight();
  int[] pixels = new int[width * height];
  for (int y = 0; y < height; y++) {
    int offset = y * width;
    for (int x = 0; x < width; x++) {
      pixels[offset + x] = result.get(x, y) ? BLACK : WHITE;
    }
  }

  Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
  bitmap.setPixels(pixels, 0, width, 0, 0, width, height);
  return bitmap;
}
 
开发者ID:amap-demo,项目名称:weex-3d-map,代码行数:33,代码来源:QRCodeEncoder.java

示例13: WhiteRectangleDetector

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
/**
 * @param image barcode image to find a rectangle in
 * @param initSize initial size of search area around center
 * @param x x position of search center
 * @param y y position of search center
 * @throws NotFoundException if image is too small to accommodate {@code initSize}
 */
public WhiteRectangleDetector(BitMatrix image, int initSize, int x, int y) throws NotFoundException {
  this.image = image;
  height = image.getHeight();
  width = image.getWidth();
  int halfsize = initSize / 2;
  leftInit = x - halfsize;
  rightInit = x + halfsize;
  upInit = y - halfsize;
  downInit = y + halfsize;
  if (upInit < 0 || leftInit < 0 || downInit >= height || rightInit >= width) {
    throw NotFoundException.getNotFoundInstance();
  }
}
 
开发者ID:simplezhli,项目名称:Tesseract-OCR-Scanner,代码行数:21,代码来源:WhiteRectangleDetector.java

示例14: createQRImage

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
private static void createQRImage(File qrFile, String qrCodeText, int size,
        String fileType) throws WriterException, IOException {
    // Create the ByteMatrix for the QR-Code that encodes the given String
    Hashtable hintMap = new Hashtable();
    hintMap.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L);
    QRCodeWriter qrCodeWriter = new QRCodeWriter();
    BitMatrix byteMatrix = qrCodeWriter.encode(qrCodeText,
            BarcodeFormat.QR_CODE, size, size, hintMap);
    // Make the BufferedImage that are to hold the QRCode
    int matrixWidth = byteMatrix.getWidth();
    BufferedImage image = new BufferedImage(matrixWidth, matrixWidth,
            BufferedImage.TYPE_INT_RGB);
    image.createGraphics();

    Graphics2D graphics = (Graphics2D) image.getGraphics();
    graphics.setColor(Color.WHITE);
    graphics.fillRect(0, 0, matrixWidth, matrixWidth);
    // Paint and save the image using the ByteMatrix
    graphics.setColor(Color.BLACK);

    for (int i = 0; i < matrixWidth; i++) {
        for (int j = 0; j < matrixWidth; j++) {
            if (byteMatrix.get(i, j)) {
                graphics.fillRect(i, j, 1, 1);
            }
        }
    }
    ImageIO.write(image, fileType, qrFile);
}
 
开发者ID:Labas-Vakaras,项目名称:Smart_City,代码行数:30,代码来源:QRGenerator.java

示例15: renderResult

import com.google.zxing.common.BitMatrix; //导入方法依赖的package包/类
private static BitMatrix renderResult(AztecCode code, int width, int height) {
    BitMatrix input = code.getMatrix();
    if (input == null) {
        throw new IllegalStateException();
    }
    int inputWidth = input.getWidth();
    int inputHeight = input.getHeight();
    int outputWidth = Math.max(width, inputWidth);
    int outputHeight = Math.max(height, inputHeight);
    int multiple = Math.min(outputWidth / inputWidth, outputHeight / inputHeight);
    int leftPadding = (outputWidth - (inputWidth * multiple)) / 2;
    int topPadding = (outputHeight - (inputHeight * multiple)) / 2;
    BitMatrix output = new BitMatrix(outputWidth, outputHeight);
    int inputY = 0;
    int outputY = topPadding;
    while (inputY < inputHeight) {
        int inputX = 0;
        int outputX = leftPadding;
        while (inputX < inputWidth) {
            if (input.get(inputX, inputY)) {
                output.setRegion(outputX, outputY, multiple, multiple);
            }
            inputX++;
            outputX += multiple;
        }
        inputY++;
        outputY += multiple;
    }
    return output;
}
 
开发者ID:JackChan1999,项目名称:boohee_v5.6,代码行数:31,代码来源:AztecWriter.java


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