GXPENG9527 2023-03-16 10:32 采纳率: 33.3%
浏览 13

VB使用ZXING生成二维码报错

img


 Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        Dim name As String = "张三"
        Dim address As String = "北京市朝阳区"
        Dim phone As String = "13812345678"

        ' 构造要生成的文本内容
        Dim content As String = $"姓名:{name}{vbCrLf}地址:{address}{vbCrLf}电话:{phone}"

        ' 将文本转换为 UTF-8 编码的字节数组
        Dim bytes As Byte() = Encoding.UTF8.GetBytes(content)

        ' 创建二维码生成器
        Dim qrCodeWriter As New BarcodeWriter()

        ' 设置生成器参数
        qrCodeWriter.Format = BarcodeFormat.QR_CODE
        qrCodeWriter.Options = New ZXing.Common.EncodingOptions() With {
            .Width = 200,
            .Height = 200
        }

        ' 生成二维码
        Dim bitmap As Bitmap = qrCodeWriter.Write(bytes)

        ' 显示二维码
        PictureBox1.Image = bitmap
    End Sub

求解答为啥会提示这种错误,应该怎么修改?

  • 写回答

3条回答 默认 最新

  • 追cium 2023-03-16 11:13
    关注

    参考GPT和自己的思路:

    根据你提供的报错提示,可以看出是缺少命名空间的引用。具体地说,是缺少“ZXing”的引用。

    要解决这个问题,可以按照以下步骤进行操作:

    1. 在项目中右键单击“引用”,选择“管理NuGet程序包”。

    2. 在弹出的“NuGet包管理器”窗口中,搜索“ZXing”,并安装“ZXing.Net”。

    3. 在代码中添加命名空间引用:

    Imports ZXing
    Imports ZXing.QrCode
    
    1. 同时,修改生成二维码的代码段,将生成器参数的设置方式改为:
    ' 创建二维码生成器
    Dim qrCodeWriter As New BarcodeWriter(Of Bitmap)()
    
    ' 设置生成器参数
    Dim encodingOptions = New QrCodeEncodingOptions With {
        .DisableECI = True,
        .CharacterSet = "UTF-8",
        .Width = 200,
        .Height = 200
    }
    qrCodeWriter.Options = encodingOptions
    

    这些修改后,会解决“ZXing”引用导致的报错,并正确生成二维码。

    评论

报告相同问题?

问题事件

  • 创建了问题 3月16日

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?