C#窗体创建二维码
来源:互联网 发布:java gc日志分析工具 编辑:程序博客网 时间:2024/06/06 12:23
先到http://download.csdn.net/detail/hhxin635612026/6989797,下载ThoughtWorks.QRCode.dll
1、先将dll文件放入debug下,路径如下图
2、导入dll文件到当前项目,点击添加引用
在浏览中bin->debug下找到ThoughtWorks.QRCode.dll,点击确定
项目中出现下图情况说明添加成功
3、程序编写,
以下为封装的二维码生成类
using System;using System.Collections.Generic;using System.Linq;using System.Text;using ThoughtWorks.QRCode.Codec;using System.Drawing;namespace WindowsFormsApplication1{ class GenerateQRCode { /// <summary> /// 生成QRcode二维码 /// </summary> /// <param name="code">要编码的字符串</param> /// <param name="size">生成图片的高度</param> /// <returns>生成后的二维码图片</returns> public static Bitmap GetQRCode(string code, int size) { QRCodeEncoder qrEntity = new QRCodeEncoder(); qrEntity.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;//二维码编码方式 qrEntity.QRCodeScale = 10;//每个小方格的宽度 qrEntity.QRCodeVersion = 5;//二维码版本号 qrEntity.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;//纠错码等级 System.Drawing.Bitmap srcimage; //动态调整二维码版本号,上限40,过长返回空白图片,编码后字符最大字节长度2953 while (true) { try { srcimage = qrEntity.Encode(code, System.Text.Encoding.UTF8); break; } catch (IndexOutOfRangeException e) { if (qrEntity.QRCodeVersion < 40) { qrEntity.QRCodeVersion++; } else { srcimage = new Bitmap(100, 100); break; } } } //为生成的二维码图像裁剪白边并调整为请求的高度 return srcimage; } }}
4、生成二维码主要语句
pictureBoxQRCode.Image = GenerateQRCode.GetQRCode(qrCode, 155);
就会在PictureBox控件上生成二维码,其中qrCode为二维码内容参数
private void 创建ToolStripMenuItem_Click(object sender, EventArgs e) { comboBoxCodeType.SelectedIndex = 1;//非微信二维码 string timestamp = Convert.ToString(DateTimeExtensions.currentTimeMillis(DateTime.Now));//时间戳 INIClass inic = new INIClass(Application.StartupPath + @"\demo.ini");//初始化路径; string token = inic.IniReadValue("Token", "token");//机构令牌 string fullName = textBoxFullname.Text; string mob = textBoxMob.Text; string qrCode = fullName + mob + token + timestamp; textBoxQrCode.Text = qrCode; pictureBoxQRCode.Image = GenerateQRCode.GetQRCode(qrCode, 155); // MessageBox.Show(""+qrCode.Length);显示二维码长度 }
1 1
- C#窗体创建二维码
- C#创建不规则窗体
- C# 动态创建窗体
- C#创建不规则窗体
- C# 创建不规则窗体
- C# 创建MDI窗体
- C#创建不规则美化窗体
- C# 反射动态创建窗体
- C#创建不规则窗体代码
- 使用C#创建不规则窗体
- C#创建非矩形窗体
- C# 反射动态创建窗体
- 创建 C# Windows 窗体应用程序
- C#创建不规则窗体-图片
- Windows应用程序C#创建MDI父窗体和子窗体
- C# 创建窗体禁止窗体拖动和关闭
- [原创]用C#创建可拖动窗体
- 用C#创建可拖动窗体
- eclipse里配置Android ndk环境,直接用eclipse编译.so文件
- seo新手的几大误区
- JavaScript学习笔记(四)DOM
- *Leetcode_convert-sorted-list-to-binary-search-tree
- Android Adapter详解
- C#窗体创建二维码
- 胡三娘没有办法,就将那里说了
- 马伊俐文章最新··
- leetcode: Construct Binary Tree from Inorder and Postorder Traversal
- C语言宏定义取得两数的最大值和最小值--其实你的认为是错的!
- Maven
- 1+1的01是什么
- 第六周——对象做数据成员
- 时间函数