推荐一个开源的 .NET 二维码生成库
你好,这里是 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、ASP.NET、ImageSharp、SkiaSharp 等的示例代码。
如何使用
1. 通过 Nuget 安装 Net.Codecrete.QrCodeGenerator。
Install-Package Net.Codecrete.QrCodeGenerator -Version 2.0.3
1. 在程序中添加下面的代码
var text = "https://dotnet.microsoft.com";
var qr = QrCode.EncodeText(text, QrCode.Ecc.Medium);
string svg = qr.ToSvgString(4);
File.WriteAllText("qrcode.svg", svg, Encoding.UTF8);
执行后,程序会生成下面的二维码。
上面的代码中, QrCode.Ecc.Medium 用来配置纠错级别。比如设置为 QrCode.Ecc.High 时,代表二维码损坏 30% 以下,还是可以正常识别的。另外 Medium 是 15%, Low 是 7%。
另外还支持设置前景和背景颜色, 下面的就变成绿码了。
var text = "https://dotnet.microsoft.com";
var qr = QrCode.EncodeText(text, QrCode.Ecc.High);
string svg = 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 图像非常简单:
var text = "https://dotnet.microsoft.com";
var qr = 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
往期推荐:
在 .NET 中执行 JavaScript 代码
适用于 .NET 的开源文本差异对比组件
基于 abp 微服务架构的开源低代码平台
开源轻量的 .NET 监控工具 - 看门狗
使用 C# 开发的轻量级开源数据库 LiteDB
Dotnet 工具箱
扫码关注我们
分享
点收藏
点点赞
点在看
推荐一个开源的 .NET 二维码生成库相关推荐
- [2021]Linux下C语言qrencode二维码生成库的基本使用和ARM开发板移植
文章目录 一.前言 二.准备所用到的环境以及版本信息 1.Ubuntu和内核版本 2.gcc和g++版本 3.交叉编译gcc和g++版本 4.开发板信息 三.开发环境编译&安装qrencode ...
- libqr--简单好用的c++二维码生成库
libqr简介 libqr是github上开源的二维码生成库,地址:https://github.com/rsky/qrcode.使用c语言写成,但是用在c++代码里面毫无违和感,api简单好用,自带 ...
- 搭建一个自己的轻量级二维码生成接口
文章来源:https://www.skyqian.com/archives/QRcode-interface.html 一般而言,第一时间会在博客更新,CSDN随缘更新. 引言 月明浑似雪,无处认渔家 ...
- 一个炫酷的二维码生成项目附源码
前阵子打算换一个炫酷的公众号二维码,无奈市面上很多的二维码修改器都不尽人意. 草料二维码也挺炫酷的,但是也没有满意的效果. 于是又去万能的github逛了一下,终于找到了一款开源的二维码修改器. 这个 ...
- C/C++二维码生成库qrencode的使用
1.在 https://fukuchi.org/works/qrencode/ 下载qrencode库,我下的是qrencode-4.0.2.tar.gz版本. 2.为该库生成vs解决方案,这里用到c ...
- 二维码生成库zxing 空白边距问题
今天项目中有生成 二维码的需求,所以就想到了zxing这个 二维码库,至于zxing库的详解,这里不做说明,网上一大堆.这里主要讲下使用过程中遇到的大坑,空白边距问题.源码中给出了一个margen的参 ...
- Python二维码生成库qrcode示例
二维码简称 QR Code(Quick Response Code),学名为快速响应矩阵码,是二维条码的一种,由日本的 Denso Wave 公司于 1994 年发明.现随着智能手机的普及,已广泛应用 ...
- VUE中:printJS使用,附带JsBarcode条码生成器,网页转图片html2canvas,base64上传保存处理,二维码生成库qrcode,二维码/条码扫描识别,domtoimage
官网 JsBarcode官网 JsBarcode的GitHub-WIKI 我的项目需求只需要将配置好的HTML与CSS样式传入进去就好,较为简单. 九个月后html2canvas出现线上问题 设置了跨 ...
- 【愚公系列】2022年12月 .NET CORE工具案例-.NET Core使用QrCodeGenerator进行二维码生成
文章目录 前言 一..NET Core使用QrCodeGenerator进行二维码生成 1.安装nuget程序包 2.二维码生成 2.1 基本生成 2.2 设置前景和背景颜色 2.3 生成 PNG 格 ...
最新文章
- 构造函数初始化结构体
- 转:ORACLE 中ROWNUM用法总结!
- 分析模板方法设计模式
- HTML期末大网页作业-腾讯官网
- 百度地图demo基础组件演示
- AtCoder Beginner Contest 171 B - Mix Juice
- Cohesity扩大云软件产品组合 目标直指云未来
- [backbone] Getting Started with Backbone.js
- RK3399 ALC5640芯片配置
- P2882 [USACO07MAR]Face The Right Way G 【贪心 + 差分】
- 如何用邮件群发软件发邮件到对方的信箱里
- Pipeline支撑运维自动化:sftp原子模块
- 手机照片局部放大镜_如何为不识字的老年人挑选一款合适的智能手机
- 计算机光驱参数,光驱价格参数简介【图文】
- 格式化时间戳(时间戳转化为日期时间格式)
- QT实战-计算器-刘桂林-专题视频课程
- 抽象类是否可以加public_喷施农药时是否可以加洗衣粉?对比不添加,有没有优势?...
- Windows程式开发设计指南(十六)调色盘管理器
- 隐藏受保护的操作系统文件 变为单选框的恢复
- 刷题第八天(贪心加前缀和,待更新)