C#生成二维码(winform窗体显示)

 

第一步工作,下载动态库引用

ThoughtWorks.QRCode //下载地址 https://pan.baidu.com/s/16onWAABs6hwtzili76XtbQ 密码:nbau

System.Web.Extensions //添加引用程序集搜索的出来引用即可

注意下载后解压有两个文件,ThoughtWorks.QRCode.dll 动态库 和qrcode_data文件放在根目录下,

引用Dll

缺少qrcode_data文件系统就会报错,

附上demo代码

 /// <summary>
        /// 生成二维码字符串形式
        /// </summary>
        public void GenerateQRcode()
        {
            //JavaScriptSerializer jss = new JavaScriptSerializer();
            string strSaveDir = @".\QRcode";
            QRCodeEncoder endocder = new QRCodeEncoder();
            //二维码背景颜色
            endocder.QRCodeBackgroundColor = System.Drawing.Color.White;
            //二维码编码方式
            endocder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;
            //每个小方格的宽度
            endocder.QRCodeScale = 11;
            //二维码版本号
            endocder.QRCodeVersion = 0;
            //纠错等级
            endocder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;
            //var person = new { Id = 1, Name = "wolfy", Gender = 1, Age = 24 };//内容部分
            //var person = 201904200001;//流水号
            var person =this.textBox1.Text;//流水号
            //将json川做成二维码
            Bitmap bitmap = endocder.Encode(new JavaScriptSerializer().Serialize(person),Encoding.UTF8);
            //string strSaveDir = absoluteSave;// Request.MapPath("/QRcode/");
            if (!Directory.Exists(strSaveDir))
            {
                Directory.CreateDirectory(strSaveDir);
            }
            string strSavePath = Path.Combine(strSaveDir, person.Name + ".png");//内容部分
            string strSavePath = Path.Combine(strSaveDir, "wolfy.png");//流水号
            if (!System.IO.File.Exists(strSavePath))//存在不更新
            {
                bitmap.Save(strSavePath);
            }
            bitmap.Save(strSavePath);//实时更新
            //ViewBag.img = "/QRcode/" + person.Name + ".png";
            pictureBox1.Image = bitmap;
            return; //View();
        }

 

实现效果:

用扫描器进行扫描获取信息

 

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值