我的应用程序使用zxing库来扫描QR码,但该库无法支持扫描白色背景的黑色码(负片扫描),请建议我解决此问题的方法。
添加以下代码,source.invert() 就可以完成你的工作
LuminanceSource source = new RGBLuminanceSource(bitmaps[0].getWidth(),
bitmaps[0].getHeight(), intArray);
BinaryBitmap bMap = new BinaryBitmap(new HybridBinarizer(source));
try {
result = reader.decode(bMap);
} catch (Exception e) {
BinaryBitmap bMap1 = new BinaryBitmap(new HybridBinarizer(source.invert()));
try {
result = reader.decode(bMap1);
} catch (NotFoundException notFoundException) {
// notFoundException.printStackTrace();
} catch (ChecksumException checksumException) {
//checksumException.printStackTrace();
} catch (FormatException formatException) {
//formatException.printStackTrace();
}
}
return result;