.net core 生成二维码
其实生成二维码的组件有很多种,如:QrcodeNet,ZKWeb.Fork.QRCoder,QRCoder等
我选QRCoder,是因为小而易用、支持大并发生成请求、不依赖任何库和网络服务。
既然是.net core 那当然要用依赖注入,通过构造函数注入到控制器。
软件版本
Asp.net Core:2.0
(开发时最新)
项目结构
Snai.QRCode.Api Asp.net core 2.0 Api网站
项目实现
新建Snai.QRCode解决方案,在解决方案下新建一个名Snai.QRCode.Api Asp.net core 2.0 Api网站
在 依赖项 右击 管理NuGet程序包 浏览 找到 QRCoder 版本1.3.3 下载安装
由于使用依赖注入,依赖抽象不依赖实现,所以要建一个实现二维码的接口
在项目添加 Common 文件夹,在文件夹添加 IQRCode 二维码接口,接口定义 GetQRCode 二维码方法,代码如下
在 Common 目录下添加 RaffQRCode 类,继承IQRCode接口实现GetQRCode类,代码如下
修改Startup.cs代码,注入RaffQRCode类到容器
代码如下:
在Controllers 下添加QRCodeController Api空的控制器,采用构造函数依赖,引入RaffQRCode类
添加GetQRCode(string url, int pixel)方法,加入HttpGet("/api/qrcode")路由地址,方法里使用_iQRCode.GetQRCode(url, pixel)生成二维码再输出
代码如下:
到此所有代码都已编写完成
启动运行项目,在浏览器打开 http://localhost:5000//api/qrcode?url=http://www.baidu.com&pixel=4 地址,得到url参数域名的二维码
/* GetGraphic方法参数说明
public Bitmap GetGraphic(int pixelsPerModule, Color darkColor, Color lightColor, Bitmap icon = null, int iconSizePercent = 15, int iconBorderWidth = 6, bool drawQuietZones = true)
*
int pixelsPerModule:生成二维码图片的像素大小 ,我这里设置的是5
*
Color darkColor:暗色 一般设置为Color.Black 黑色
*
Color lightColor:亮色 一般设置为Color.White 白色
*
Bitmap icon :二维码 水印图标 例如:Bitmap icon = new Bitmap(context.Server.MapPath("~/images/zs.png")); 默认为NULL ,加上这个二维码中间会显示一个图标
*
int iconSizePercent: 水印图标的大小比例 ,可根据自己的喜好设置
*
int iconBorderWidth: 水印图标的边框
*
bool drawQuietZones:静止区,位于二维码某一边的空白边界,用来阻止读者获取与正在浏览的二维码无关的信息 即是否绘画二维码的空白边框区域 默认为true
*/
源码访问地址:https://github.com/Liu-Alan/Snai.QRCode
原文地址: https://www.cnblogs.com/alan-lin/p/9193290.html
.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com
.net core 生成二维码相关推荐
- Asp.Net Core在线生成二维码
前言: 原先用zxing Code写过基于Winfrom的批量生成二维码工具,以及单个生成二维码工具:批量生成二维码Gihub源代码 今天尝试用QRCoder 加 Asp.Net Core 写了一个在 ...
- 使用Java生成二维码图片(亲测)
下面我来分享两种生成二维码图片的方法. 第一种,填入你扫描二维码要跳转的网址直接生成二维码 第一步:导入相关的包 1 <dependency> 2 <groupId>com.g ...
- java 生成二维码
一步一步用 java 设计生成二维码 转至 http://blog.sina.com.cn/s/blog_5a6efa330102v1lb.html 在物联网的时代,二维码是个很重要的东西了,现在无论 ...
- Andoid开发中生成二维码
2019独角兽企业重金招聘Python工程师标准>>> 第一步: 确定我们二维码的位置,即是在我们应用的哪个页面的哪个位置,简单讲就是用一个ImageView把二维码展示出来,我们就 ...
- Android 生成二维码,条形码,二维码添加logo
zxing生成二维码 implementation 'com.google.zxing:core:3.3.1' implementation(name: 'zxing-1.0.1', ext: 'aa ...
- 【Java中级篇】使用zxing生成二维码
一.pom.xml添加依赖 <dependency><groupId>com.google.zxing</groupId><artifactId>cor ...
- java springMVC生成二维码
Zxing是Google提供的工具,提供了二维码的生成与解析的方法,现在使用Java利用Zxing生成二维码 1),二维码的生成 将Zxing-core.jar 包加入到classpath下. 我的下 ...
- java使用zxing生成二维码
zxing是Google提供的免费开源且操作十分方便的一个针对二维码的项目 代码也比较简单,这里我就直接把注释写上,直接根据自己的需要改动就行了. maven依赖: <dependencies& ...
- android 生成二维码_Java 生成二维码实战
简介 ZXing 是一个开源 Java 类库用于解析多种格式的 1D/2D 条形码.目标是能够对QR编码.Data Matrix.UPC的1D条形码进行解码.其提供了多种平台下的客户端包括:J2ME. ...
最新文章
- linux 常用命令整理----链接文件
- 将森林转换为对应的二叉树,若在二叉树中,结点u时结点v的父结点的父结点,则在原来的森林中,u和v可能具有的关系是( )
- 文明重启服务器维护怎么卡进去,文明重启更新之后进不去,具体玩法介绍
- java需要先安装jdk_谢谢知乎。Java初学者首先下载 JDK 开发环境,然后再下 eclipse 对吗?那 tomcat是什么?还需要安装吗?...
- oracle 查看远程用户,oracle sysdba用户远程登录
- c语言数组题库答案,C语言数组百道练习题含答案.pdf
- C语言编程中 提取运行时间的函数,C语言中用于修改文件的存取时间的函数使用...
- poj2965--枚举专题 (算法巧妙)
- JVM监控及诊断工具GUI篇之Arthas(三):class、classloader相关指令
- 从网络启动恢复RG750Gr3
- 计算机网络规划设计实例,网络规划设计方案实例.doc
- 51中断编程c语言,有关51单片机中断的形式和C语言编程格式[精选5篇]
- conda 查看已有环境
- 初学者在VMware上搭建自己的CentOS8
- 程序员必备狂拽炫酷吊炸天的动效神器
- android异常相机处理,android 调用系统相机拍照的各种异常处理
- csharp基础练习题:产品和LCMS之间的差异总和【难度:1级】--景越C#经典编程题库,不同难度C#练习题,适合自学C#的新手进阶训练
- [置顶]FPGA 建制的任天国游戏机(NES)。
- SDU项目实训——同态加密技术学习
- C++:判断键盘输入的两个正整数是否为互质数
热门文章
- 对01背包的分析与理解(图文)
- Mybatis-Generator(MBG)教程与Idea的MBG插件
- 在SQLSERVER企业管理器中如何创建触发器
- .NET 7 预览版 2 已发布,NativeAOT 正式可用
- 如何摆脱「自我否定」状态
- .NET 6 预览版 7 发布--(最后一个预览版)
- 又到618,.NET 千万级秒杀架构到底有多牛
- 微软Build2021今日召开,共同期待VS2022+.NET6!
- 快速弄懂陌生领域是一项“赚钱”的能力
- Newbe.Claptrap 0.10.2 发布,Blazor 演示