1.安装QRCoder包
在工具—NuGet包管理器—管理解决方案的NuGet程序包,搜索QRCoder安装即可。
2.搭建控件
控件解释:
PictureBox:用来显示生成的二维码
TextBox:用作写入二维码的信息
Button:生成二维码触发事件
3.写入逻辑
二维码生成核心逻辑:
public Bitmap GetQRCodeImage(string qrCode)
{
QRCodeGenerator generator = new QRCodeGenerator();
QRCodeData data = generator.CreateQrCode(qrCode, QRCodeGenerator.ECCLevel.M);
QRCode code = new QRCode(data);
Bitmap icon = new Bitmap(@"C:\Users\57814\Desktop\image.png");//水印图片,按需设置
Bitmap qrImage = code.GetGraphic(10, Color.Black, Color.White, icon, 15, 6, true);
return qrImage;
}
完整代码:
using QRCoder;
using System;
using System.Drawing;
using System.Windows.Forms;
namespace CreatQRCoder
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public Bitmap GetQRCodeImage(string qrCode)
{
QRCodeGenerator generator = new QRCodeGenerator();
QRCodeData data = generator.CreateQrCode(qrCode, QRCodeGenerator.ECCLevel.M);
QRCode code = new QRCode(data);
Bitmap icon = new Bitmap(@"C:\Users\57814\Desktop\image.png");//水印图片,按需设置
Bitmap qrImage = code.GetGraphic(10, Color.Black, Color.White, icon, 15, 6, true);
return qrImage;
}
private void Form1_Load(object sender, EventArgs e)
{
pictureBox1.Image = GetQRCodeImage(textBox1.Text);
}
private void button1_Click(object sender, EventArgs e)
{
Form1_Load(this, null);
}
}
}