Zxing QR 码解码函数在 c# 中返回 null

本文关键字:返回 null 函数 QR 解码 Zxing | 更新日期: 2023-09-27 18:30:34

我在使用以下代码时得到空。我正在使用从NuGet下载的ZXing dll

    using ZXing.Common;
    using ZXing.QrCode;
    using ZXing.QrCode.Internal;
    private void Decode()
    {
        Bitmap bitmap = new Bitmap(@"D:'Project'QRCodes'myqrcode.png");
        try
        {
            MemoryStream memoryStream = new MemoryStream();
            bitmap.Save(memoryStream, ImageFormat.Bmp);
            byte[] byteArray = memoryStream.GetBuffer();
            ZXing.LuminanceSource source = new RGBLuminanceSource(byteArray, bitmap.Width, bitmap.Height);
            var binarizer = new HybridBinarizer(source);
            var binBitmap = new BinaryBitmap(binarizer);
            QRCodeReader qrCodeReader = new QRCodeReader();
            Result str = qrCodeReader.decode(binBitmap);
        }
        catch{ }
    }

请给我一个解决方案提前致谢

Zxing QR 码解码函数在 c# 中返回 null

problom 解决了我使用以下代码让它工作

         Bitmap bitmap = new Bitmap(@"D:'Project'QRCodes'myqrcode.png");
         try
        {               
            BarcodeReader reader = new BarcodeReader { AutoRotate = true, TryHarder = true };
            Result result = reader.Decode(bitmap);
            string decodedData = result.Text;                
        }
        catch
        {
            throw new Exception("Cannot decode the QR code");
        }