推薦一個開源的 .NET 二維碼生成庫
時間:2023-05-19 00:42:02 | 來源:網(wǎng)站運營
時間:2023-05-19 00:42:02 來源:網(wǎng)站運營
推薦一個開源的 .NET 二維碼生成庫:
你好,這里是 Dotnet 工具箱,定期分享 Dotnet 有趣,實用的工具和組件,希望對您有用!
介紹QrCodeGenerator是開源的 .NET 二維碼生成庫,它支持從文本字符串和字節(jié)數(shù)組生成二維碼圖片。
這個庫是基于 .NET Standard 2.0 構(gòu)建的,所以它可以在大多數(shù)現(xiàn)代 .NET 平臺(.NET Core、.NET Framework、Mono 等)上運行,包括 .NET 6, .NET 7。
核心特點- ?遵循 QR Code Model 2 標準, 支持完整的 40 種版本(大?。? 以及 4 個不同的二維碼糾錯級別。
- ?輸出 svg, png 等多種格式。
- ?基于 MIT 協(xié)議,開源免費。
- ?跨平臺支持,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);
執(zhí)行后,程序會生成下面的二維碼。
上面的代碼中, QrCode.Ecc.Medium 用來配置糾錯級別。比如設(shè)置為 QrCode.Ecc.High 時,代表二維碼損壞 30% 以下,還是可以正常識別的。另外 Medium 是 15%, Low 是 7%。
另外還支持設(shè)置前景和背景顏色, 下面的就變成綠碼了。
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 操作系統(tǒng)上支持,所以對于 Linux 平臺,就要另尋辟徑了。
好在作者提供了解決方案,靈活地以擴展方法的形式提供了三個選項。
- 1.選擇下面任一個圖像庫
- 2.安裝 對應(yīng)的 Nuget 包
- 3.把 QrCodeBitmapExtensions.cs 文件復(fù)制到您的項目中
使用這些擴展方法,生成 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
-技術(shù)群:添加小編微信并備注進群
小編微信:mm1552923
公眾號:dotNet編程大全