zxing二维码中文乱码问题解决方案

本文介绍了如何解决使用ZXing库时遇到的二维码中文乱码问题,包括代码调整和混淆配置的优化,以确保正确显示中文内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   private Bitmap creatQRCode(String var1, int var2) {
        try {
            Hashtable var3 = new Hashtable();
            var3.put(EncodeHintType.CHARACTER_SET, "utf-8");
            var3.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H);
            var3.put(EncodeHintType.MARGIN, 1);
            BitMatrix var4 = (new QRCodeWriter()).encode(var1, BarcodeFormat.QR_CODE, var2, var2, var3);
            var4 = this.deleteWhite(var4);
            int var5 = var4.getWidth();
            int var6 = var4.getHeight();
            int[] var7 = new int[var5 * var6];

            for (int var8 = 0; var8 < var6; ++var8) {
                for (int var9 = 0; var9 < var5; ++var9) {
                    if (var4.get(var9, var8)) {
                        var7[var8 * var5 + var9] = -16777216;
                    } else {
                        var7[var8 * var5 + var9] = -1;
                    }
                }
            }

            Bitmap var11 = Bitmap.createBitmap(var5, var6, Bitmap.Config.ARGB_8888);
            var11.setPixels(var7, 0, var5, 0, 0, var5, var6);
            return var11;
        } catch (Exception var10) {
            var10.printStackTrace();
            return null;
        }
    }
    private BitMatrix deleteWhite(BitMatrix var1) {
        int[] var2 = var1.getEnclosingRectangle();
        int var3 = var2[2] + 1;
        int var4 = var2[3] + 1;
        BitMatrix var5 = new BitMatrix(var3, var4);
        var5.clear();

        for (int var6 = 0; var6 < var3; ++var6) {
            for (int var7 = 0; var7 < var4; ++var7) {
                if (var1.get(var6 + var2[0], var7 + var2[1])) {
                    var5.set(var6, var7);
                }
            }
        }

        return var5;
    }

这是代码   妈的  还有混淆 我也看不懂 ,反正能用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值