C# QRCode解码错误:在预期范围内

C# QRCode解码错误:在预期范围内,c#,winforms,C#,Winforms,我用一个程序将文本编码成QR图像。 我使用组合框将QRCodeScale的大小从8设置为24。 我使用了MessagingToolkit.QRCode包。 当我将一个大文本放入24刻度并指向txtQR时,我从解码中得到一个错误。文本行代码: MessagingToolkit.QRCode.ExceptionHandler.InvalidVersionException: 'Value does not fall within the expected range.' 关于解码:

我用一个程序将文本编码成QR图像。 我使用组合框将QRCodeScale的大小从8设置为24。 我使用了MessagingToolkit.QRCode包。 当我将一个大文本放入24刻度并指向txtQR时,我从解码中得到一个错误。文本行代码:

    MessagingToolkit.QRCode.ExceptionHandler.InvalidVersionException: 
'Value does not fall within the expected range.'
关于解码:

    private void btn_Decode_Click(object sender, EventArgs e)
    {
        using (OpenFileDialog ofd = new OpenFileDialog()
        { Filter = "PNG Files (*.png)|*.png", ValidateNames = true, Multiselect = false })
        {
            if (ofd.ShowDialog() == DialogResult.OK) {
                pictureBoxQR.Image = Image.FromFile(ofd.FileName);
                pictureBoxQR.SizeMode = PictureBoxSizeMode.StretchImage;                 
                MessagingToolkit.QRCode.Codec.QRCodeDecoder decoder = new MessagingToolkit.QRCode.Codec.QRCodeDecoder();
                txtQR.Text = decoder.Decode(new QRCodeBitmapImage(pictureBoxQR.Image as Bitmap));
            }
        }
    }

看起来此API无法解码超过特定大小的图像。不过,我找不到任何文件明确说明这一限制。您可以在支持站点中提出问题。顺便说一下,24的
QRCodeScale
意味着一个点有24个像素,因此结果图像非常大,不需要使用如此大的比例。在我的测试中,将其设置为1足以对我手机上的条形码扫描仪进行解码。大小可能是大小定义区域的问题。无论如何,这个网站可以是一个来源,但我没有发现任何东西/-从5年没有变化。另一种方式可能是调试问题。这是真的,但仍有一些管理员在维护该站点。我可以从GitHub获取它们的源代码,也可以直接从DLL反编译,但我无法理解为什么它抛出“InvalidVersion”(版本应该在1到40之间,但它是-14)以及这个异常的含义。