首页 > 其他分享 >推荐一个开源的 .NET 二维码生成库

推荐一个开源的 .NET 二维码生成库

时间:2023-03-03 12:37:27浏览次数:53  
标签:Ecc 开源 生成 dotnet 二维码 QrCode NET

推荐一个开源的 .NET 二维码生成库

推荐一个开源的 .NET 二维码生成库

dotnet编程大全 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. 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. 1.选择下面任一个图像库

  2. 2.安装 对应的 Nuget 包

  3. 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

 

-

技术群:添加小编微信并备注进群

小编微信:mm1552923

公众号:dotNet编程大全

发布于 2022-12-06 08:11・IP 属地北京

标签:Ecc,开源,生成,dotnet,二维码,QrCode,NET
From: https://www.cnblogs.com/sexintercourse/p/17175151.html

相关文章

  • 适用于 .NET 的开源文本差异对比组件
    适用于.NET的开源文本差异对比组件DotNet大王源码资料,微信zhaoxi965,有问必复​关注他 1人赞同了该文章对于开发人员来说,Git是我们经常使用......
  • 一个程序员的成功故事:从开源工具到 75 亿美元的软件帝国
    一个程序员的成功故事:从开源工具到75亿美元的软件帝国InfoQ​已认证帐号​关注 12人赞同了该文章作者|SanjayPriyadarshi译者|核子可乐......
  • .net中的Webform使用NPOI导出excel
    .net中的Webform使用NPOI导出excelprivatevoidExprotExcelGuanXiaYan(DataSetds,ZF.Model.UserInfouModel){try{......
  • 使用sealos工具安装kubernetes集群
    一、安装前准备1.1、主机规划IP系统角色主机名192.168.80.7CentOS7.6masterk8s-master-1192.168.80.17CentOS7.6nodek8s-master-2192.168.80.27......
  • 最新FPN | CFPNet即插即用,助力检测涨点,YOLOX/YOLOv5均有效
    前言 现有的视觉特征金字塔方法过分集中于层间特征交互,而忽略了层内特征规则。一些方法试图借助注意力机制或视觉Transformer学习紧凑的层内特征表示,但它们忽略了对密集预......
  • C#/VB.NET 如何在 Word 文档中添加页眉和页脚
    页眉位于文档中每个页面的顶部区域,常用于显示文档的附加信息,可以插入时间、图形、公司微标、文档标题、文件名或作者姓名等;页脚位于文档中每个页面的底部的区域,常用于显示......
  • Coatnet网络code
      CoAt=Convolution+ Attention将conv与transformer以一种最优的方式结合:在基础的计算块中,如果合并卷积与自注意力操作。如何组织不同的计算模块来构建整个网络。......
  • .NET Core 实现后台任务(定时任务)IHostedService
    program添加服务//.Net6builder.Services.AddHostedService<TestHostedService>();//.Net5及以下services.AddHostedService<TestHostedService>(); 添......
  • 【译】.NET 7 中的性能改进(十)
    原文|StephenToub翻译|郑子铭最后一个有趣的与IndexOf有关的优化。字符串早就有了IndexOf/IndexOfAny/LastIndexOf/LastIndexOfAny,显然对于字符串来说,这都是关于处......
  • 29、如何看开源的别人的代码
    1、github上看一个项目的时候--------一定要读readme(因为它会告诉你怎么安装,安装的方法,注意事项)2、难点:参数的设置   可以使用命令来运行,文件名字前加一个python,然......