декодировать изображение QRcode без использования камеры

ребята, я разрабатываю приложение для Android для чтения QR-кодов. Я реализовал библиотеку ZXing, но не должен использовать камеру. Мне нужно получить QR-код, сохраненный в виде изображения, и использовать функции, связанные с декодированием ZXing QR-кода, сохраненного в виде изображений ... есть идеи?

Я проверил форум, но мне нужно что-то более полное.. :(


person Cristiana Camilli    schedule 30.05.2012    source источник
comment
Вы хотите сказать, что вы выбираете файл изображения, а затем следует выполнить декодирование. это так?   -  person Bhavin    schedule 30.05.2012
comment
да, простите мой английский. Мне нужно декодировать qrcode без использования камеры. фрагментов кода, найденных в других темах, мне не хватает.. Мне нужно идти шаг за шагом :(... библиотека ZXing уже скачана и размещена в рабочей области.   -  person Cristiana Camilli    schedule 30.05.2012
comment
позвольте мне еще раз проясниться. вы не хотите использовать камеру и хотите декодировать qr-код?   -  person Bhavin    schedule 30.05.2012
comment
да. Представьте, что у вас есть qrcode, сохраненный в виде файла изображения. Мне нужно взять их и расшифровать. Я знаю, что для этого есть специальные классы ZXing, но мне нужен кто-то, кто мне поможет.   -  person Cristiana Camilli    schedule 30.05.2012
comment
У меня такая же проблема. решена ваша проблема? Если да, то, пожалуйста, направьте меня.   -  person Mohini    schedule 18.12.2014


Ответы (1)


Да, вы можете декодировать QR без использования камеры. Вы должны импортировать изображение из галереи, получить растровое изображение и передать его LuminanceSource source = new RGBLuminanceSource(bMap); Вот код.

LuminanceSource source = new RGBLuminanceSource(bMap); 
BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));
Reader reader = new MultiFormatReader();
try {
    Result result = reader.decode(bitmap);
    String contents = result.getText(); 
    byte[] rawBytes = result.getRawBytes(); 
    BarcodeFormat format = result.getBarcodeFormat(); 
    ResultPoint[] points = result.getResultPoints();
} catch (NotFoundException e) {
    e.printStackTrace();
    return;
} catch (ChecksumException e) {
    e.printStackTrace();
    return;
} catch (FormatException e) {
    e.printStackTrace();
    return;
} 
person Sagar Patil    schedule 04.06.2012