Получить обратно сгенерированный QR-код из zxing encode

Я использовал zxing (включая core.jar в моем проекте) для создания QR-кодов, используя примеры со следующим кодом:

Intent intent = new Intent("com.google.zxing.client.android.ENCODE");
intent.putExtra("ENCODE_TYPE", type);
intent.putExtra("ENCODE_DATA", data);
intent.putExtra("ENCODE_SHOW_CONTENTS", false);
startActivity(intent);

Однако вместо того, чтобы вызывать новое действие, я хотел бы вернуть закодированное изображение, поэтому я могу использовать изображение в своем собственном пользовательском действии.

Есть ли способ сделать это с помощью zxing?


person phalt    schedule 12.04.2012    source источник


Ответы (3)


Вам нужен zxing.encoder.Encoder.encode()

person ᆼᆺᆼ    schedule 12.04.2012
comment
@phalt, эта ссылка верна, мои дорогие друзья. у меня есть работа над QR-кодом с помощью zxing encode - person Akash Singh; 12.04.2012
comment
Я использовал это, как вы предложили, и я могу вернуть объект QRCode с данными, но не в виде растрового изображения. Другое решение ниже предлагает вернуть растровое изображение, которое было бы идеальным, но мой core.jar не включает эту часть. Акаш - ты делал это раньше? Хотите поделиться чем-то большим, чем просто комментарием о том, как вы это сделали? - person phalt; 12.04.2012

Несколько сумбурно, но если вы посмотрите на это, он показывает, как ваше намерение преобразуется в фактический QR-код. Вам нужно будет вырвать определенные части, которые вы хотите, но функция encodeAsBitmap выглядит так, как будто она дает вам android.graphics.Bitmap, которую вы можете использовать.

person Femi    schedule 12.04.2012

Нет, он не возвращает закодированный QR-код через Intent. (Хотя ваш пользователь может нажать «Меню», затем «Поделиться», чтобы отправить или сохранить изображение.) Вам необходимо закодировать содержимое на вашей стороне, используя класс Encoder.

person Sean Owen    schedule 12.04.2012
comment
Шон, есть пример того, как это сделать? Я хотел бы вставить URL-адрес в QR-код. - person Thet Mon Aye; 18.04.2012