首先安装ZXing.Net及兼容包,然后使用BarcodeWriter生成二维码图像并显示在PictureBox中,接着通过BarcodeReader解码图像获取文本信息,注意设置尺寸、清晰度和编码以提高识别率。

在C#开发中,生成和识别二维码是许多项目中的常见需求,比如支付系统、会员卡、信息分享等场景。ZXing.Net 是一个强大的开源库,支持多种条码和二维码的生成与识别,使用简单且功能全面。下面带你一步步实现二维码的生成与识别。
在开始之前,你需要将 ZXing.Net 添加到你的项目中。打开 Visual Studio,右键项目选择“管理 NuGet 包”,搜索并安装以下两个包:
或者使用 Package Manager 命令行:
Install-Package ZXing.Net Install-Package ZXing.Net.Bindings.Windows.Compatibility
使用 ZXing.Net 生成二维码非常简单。以下是一个在 WinForms 中生成二维码并显示在 PictureBox 上的示例:
using ZXing;
using ZXing.QrCode;
<p>// 创建二维码写入器
var writer = new BarcodeWriter
{
Format = BarcodeFormat.QR_CODE,
Options = new QrCodeEncodingOptions
{
Width = 300,
Height = 300,
Margin = 1
}
};</p><p>// 生成二维码图像
var bitmap = writer.Write("<a href="https://www.php.cn/link/2f7eaf16eceec07fc19c93090e90033a">https://www.php.cn/link/2f7eaf16eceec07fc19c93090e90033a</a>");</p><p>// 显示在 PictureBox 中
pictureBox1.Image = bitmap;</p>你可以将任意文本、网址、联系方式等字符串传入 Write 方法生成对应的二维码。
识别二维码同样简单。假设你有一张包含二维码的图片,可以通过以下代码提取其中的信息:
using ZXing;
<p>// 加载二维码图片
var barcodeReader = new BarcodeReader();
var result = barcodeReader.Decode((Bitmap)pictureBox1.Image);</p><p>if (result != null)
{
MessageBox.Show("识别结果:" + result.Text);
}
else
{
MessageBox.Show("未识别到二维码");
}</p>这段代码会从 pictureBox1 中加载图像,并尝试解码其中的二维码内容。识别成功后返回文本信息。
如果你需要支持更复杂的图像来源(如文件路径),可以这样写:
var bitmap = (Bitmap)Image.FromFile(@"C:\qrcode.png"); var result = barcodeReader.Decode(bitmap);
barcodeReader.Options.TryHarder = true; 提高识别成功率Options.Hints[EncodeHintType.CHARACTER_SET] = "UTF-8"
基本上就这些。ZXing.Net 让 C# 开发者能快速集成二维码功能,无需复杂配置。无论是桌面应用还是服务端生成图像,都能轻松应对。
以上就是C#如何实现二维码的生成与识别?ZXing.Net库实战教程的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号