如何在 android 中不使用 zxing 创建二维码?

How to create QR not using zxing in android?

我需要按照以下配置创建二维码:

 - 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 设置这些配置,或者是否有任何替代选项来存档上述所有因素?

Model 2

  1. ZXing 似乎支持 Model 2 QR Code 作为代码: https://github.com/zxing/zxing/blob/master/core/src/main/java/com/google/zxing/qrcode/encoder/Encoder.java#L280

    似乎可以处理版本 1 到 40。模型 1 只能升级到版本 14。

Max 174 alphanumeric characters or 119 binary

  1. 计数?或者使用 QR Code Storage section 中的粗略度量,其中列出了 5.5 位字母数字和 8 位二进制。请注意更改纠错会更改图像中使用的 bits/modules 的数量。

Modules size 0.03 inch

  1. 这是一个显示密度问题,通过Getting the screen density programmatically in android?计算。