网上有相关的一些分析资料,百度贴吧里也有原因,因为创建的时候预先插入了白边。 这里给出不修改源代码的方案。?测试PDF_418和QR_CODE有效 其他的同理,需要研究源代码
class="java" name="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; }
??