本文所引用的是 QRCodeProvider.dll
DLL下载地址:https://download.csdn.net/download/qq_20454875/12391379
using com.google.zxing;
using com.google.zxing.common;
using System;
using System.Drawing;
using System.Windows.Forms;
namespace QRCodeDemo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
/// <summary>
/// 生成二维码
/// </summary>
/// <param name="content"></param>
/// <returns></returns>
private static Bitmap GenerateQRCode(string content)
{
ByteMatrix byteMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, 200, 200);
Bitmap bitmap = toBitmap(byteMatrix);
return bitmap;
}
/// <summary>
/// ByteMatrix 转 Bitmap
/// </summary>
/// <param name="matrix"></param>
/// <returns></returns>
public static Bitmap toBitmap(ByteMatrix matrix)
{
int width = matrix.Width;
int height = matrix.Height;
Bitmap bmap = new Bitmap(width, height, System.Drawing.Imaging.PixelFormat.Format32bppArgb);
for (int x = 0; x < width; x++)
{
for (int y = 0; y < height; y++)
{
bmap.SetPixel(x, y, matrix.get_Renamed(x, y) != -1 ? ColorTranslator.FromHtml("0xFF000000") : ColorTranslator.FromHtml("0xFFFFFFFF"));
}
}
return bmap;
}
private void Form1_Load(object sender, EventArgs e)
{
//使用示例:
string content = "https://blog.csdn.net/qq_20454875";
pictureBox1.Image = GenerateQRCode(content);
}
}
}