推荐一个开源的 .NET 二维码生成库
dotnet编程大全 专注C# WPF编程,dotnet编程大全
你好,这里是 Dotnet 工具箱,定期分享 Dotnet 有趣,实用的工具和组件,希望对您有用!
介绍
QrCodeGenerator是开源的 .NET 二维码生成库,它支持从文本字符串和字节数组生成二维码图片。
这个库是基于 .NET Standard 2.0 构建的,所以它可以在大多数现代 .NET 平台(.NET Core、.NET Framework、Mono 等)上运行,包括 .NET 6, .NET 7。
核心特点
-
•遵循 QR Code Model 2 标准, 支持完整的 40 种版本(大小), 以及 4 个不同的二维码纠错级别。
-
•输出 svg, png 等多种格式。
-
•基于 MIT 协议,开源免费。
-
•跨平台支持,macOS, Linux, iOS
-
•项目提供了 WinForms、WPF、http://ASP.NET、ImageSharp、SkiaSharp 等的示例代码。
如何使用
1. 通过 Nuget 安装 Net.Codecrete.QrCodeGenerator。
Install-PackageNet.Codecrete.QrCodeGenerator-Version2.0.3
-
1.在程序中添加下面的代码
vartext="https://dotnet.microsoft.com"; varqr=QrCode.EncodeText(text,QrCode.Ecc.Medium); stringsvg=qr.ToSvgString(4); File.WriteAllText("qrcode.svg",svg,Encoding.UTF8);
执行后,程序会生成下面的二维码。
上面的代码中, QrCode.Ecc.Medium 用来配置纠错级别。比如设置为 QrCode.Ecc.High 时,代表二维码损坏 30% 以下,还是可以正常识别的。另外 Medium 是 15%, Low 是 7%。
另外还支持设置前景和背景颜色, 下面的就变成绿码了。
vartext="https://dotnet.microsoft.com"; varqr=QrCode.EncodeText(text,QrCode.Ecc.High); stringsvg=qr.ToSvgString(4,"green","white"); File.WriteAllText("qrcode.svg",svg,Encoding.UTF8);
生成 PNG 格式的二维码
从 .NET 6 开始,System.Drawing只在 Windows 操作系统上支持,所以对于 Linux 平台,就要另寻辟径了。
好在作者提供了解决方案,灵活地以扩展方法的形式提供了三个选项。
-
1.选择下面任一个图像库
-
2.安装 对应的 Nuget 包
-
3.把 QrCodeBitmapExtensions.cs 文件复制到您的项目中
使用这些扩展方法,生成 PNG 图像非常简单:
vartext="https://dotnet.microsoft.com"; varqr=QrCode.EncodeText(text,QrCode.Ecc.High); qr.SaveAsPng("qrcode.png",10,3, foreground:SKColor.Parse("#45aae5"), background:SKColor.Parse("#ffffff") );
生成的二维码如下:
项目地址
https://github.com/manuelbl/QrCodeGenerator
-
发布于 2022-12-06 08:11・IP 属地北京 标签:Ecc,开源,生成,dotnet,二维码,QrCode,NET From: https://www.cnblogs.com/sexintercourse/p/17175151.html技术群:添加小编微信并备注进群
小编微信:mm1552923
公众号:dotNet编程大全