zxing 去白边

网上有相关的一些分析资料,百度贴吧里也有原因,因为创建的时候预先插入了白边。 这里给出不修改源代码的方案。 测试PDF_418和QR_CODE有效 其他的同理,需要研究源代码

	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;
	}

  

你可能感兴趣的:(zxing 去白边)