关于我想要实现的目标的一点想法:
ImageView
(可能)现在,在步骤1和步骤2之间,我想扫描步骤1中图像上的条形码。
根据扫描结果:
Toast
条形码信息,例如格式和内容。Toast
告知该图片没有任何条形码。我探索了ZXing(在某种程度上)以实现我的目标。
但我无法得到的是:
答案 0 :(得分:1)
我终于有办法让它与zxing条码扫描器库一起工作。
从任何已保存的图库或文件夹中获取图片时,请记住几件事情,
这是代码。
try {
Bitmap bMap = BitmapFactory.decodeResource(MyActivity.this.getResources(),
R.drawable.barcode_dummy /* ANY DUMMY IMAGE WITH BARCODE */);
int[] intArray = new int[bMap.getWidth() * bMap.getHeight()];
// copy pixel data from the Bitmap into the 'intArray' array
bMap.getPixels(intArray, 0, bMap.getWidth(), 0, 0, bMap.getWidth(),
bMap.getHeight());
LuminanceSource source = new RGBLuminanceSource(bMap.getWidth(),
bMap.getHeight(), intArray);
BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));
Reader reader = new MultiFormatReader();// use this otherwise
// ChecksumException
try {
Hashtable<DecodeHintType, Object> decodeHints = new Hashtable<DecodeHintType, Object>();
decodeHints.put(DecodeHintType.TRY_HARDER, Boolean.TRUE);
decodeHints.put(DecodeHintType.PURE_BARCODE, Boolean.TRUE);
Result result = reader.decode(bitmap, decodeHints);
Utility.ShowToastShort(MyActivity.this,
result.getText());
} catch (NotFoundException e) {
e.printStackTrace();
} catch (ChecksumException e) {
e.printStackTrace();
} catch (FormatException e) {
e.printStackTrace();
} catch (NullPointerException e) {
e.printStackTrace();
}
希望它有所帮助。它对我有用。谢谢