Как создать QR без использования ZXING в Android? - PullRequest
0 голосов
/ 31 мая 2019

Мне нужно создать QR-код следующей конфигурации ниже:

 - Model 2
 - Version 10
 - Size 57 x 57 
 - Level H (30%)
 - Max 174 alphanumeric characters or 119 binary
 - Modules size 0.03 inch

На самом деле, я использую zxing для создания QR, но я не могу понять, как установить эти 3 конфигурации

- Model 2
- Max 174 alphanumeric characters or 119 binary
- Modules size 0.03 inch

И этот код, который я использую (Kotlin)


        imgQrCode.run{setImageBitmap(BarcodeEncoder().createBitmap(
             MultiFormatWriter().encode(content, 
                                        BarcodeFormat.QR_CODE, 
                                        57, 57,
                                        mapOf<EncodeHintType, Any>(
                                           Pair(EncodeHintType.QR_VERSION, 10),
                                           Pair(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H)

    ))))}

Любая идея, как я могу установить эти конфигурации с помощью zxing, или есть какой-нибудь альтернативный вариант для архивирования всех факторов выше?

1 Ответ

0 голосов
/ 31 мая 2019

Модель 2

  1. Похоже, что ZXing поддерживает QR-код модели 2 в виде кода: https://github.com/zxing/zxing/blob/master/core/src/main/java/com/google/zxing/qrcode/encoder/Encoder.java#L280

    , кажется, обрабатывает версии 1до 40. Модель 1 работает только до версии 14.

Макс. 174 буквенно-цифровых символа или 119 двоичных

граф?Или используйте грубую метрику из секции хранения QR-кода , в которой перечислены 5,5 бит для буквенно-цифровых и 8 бит для двоичных.Не забывайте, что изменение коррекции ошибок изменит количество бит / модулей, используемых в изображении.

Размер модулей 0,03 дюйма

Это вопрос плотности отображения, рассчитайте через Как получить плотность экрана программно в Android? .
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...