C#实现将网址生成二维码图片方法介绍
作者:農碼一生 时间:2022-08-14 02:31:49
二维码是什么
二维码 QR Code,全称为:Quick Response Code,最早用于日本汽车制造业追踪零部件。QR现有40个标准版本,4个微型版本。相比一维码(也就是我们目前还在常用的条码),拥有更高密度的编码,可存储的信息量更大。一维码只能存储字母和数字,二维码可容纳多达1850个大写字母或者2710个数字或者1108个字符或者500多个汉字,比条码存储量多了几十倍。另外,二维码可以把图片、声音、文字、等可以数字化的信息进行编码。
除此之外:二维码比一维码译码错误率要低得多(误码率不超过千分之一),保密性、防伪性更好,成本低廉,容易制作,让二维码使用更加广泛,越来越流行。
除了存储编码的数据,QR码里还含有一些基本标准里钦定的图样来帮助扫描软件快速识别和解码。
标准(ISO/IEC 18004)里是这样说的
C#实现
using System;
using System.Drawing;
using System.Text;
using ThoughtWorks.QRCode.Codec;
namespace ConsoleTest
{
public class Test
{
#region 生成二维码
/// <summary>
/// 生成二维码
/// </summary>
/// <param name="number"></param>
/// <returns></returns>
private static string QRCode()
{
System.Drawing.Bitmap bt;
string enCodeString = "http://www.baidu.com";
QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;//编码方式(注意:BYTE能支持中文,ALPHA_NUMERIC扫描出来的都是数字)
qrCodeEncoder.QRCodeScale = 4;//大小(值越大生成的二维码图片像素越高)
qrCodeEncoder.QRCodeVersion = 0;//版本(注意:设置为0主要是防止编码的字符串太长时发生错误)
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;//错误效验、错误更正(有4个等级)
qrCodeEncoder.QRCodeBackgroundColor = Color.Yellow;//背景色
qrCodeEncoder.QRCodeForegroundColor = Color.Green;//前景色
bt = qrCodeEncoder.Encode(enCodeString, Encoding.UTF8);
string filename = "code";
string file_path = AppDomain.CurrentDomain.BaseDirectory + "QRCode\\";
string codeUrl = file_path + filename + ".jpg";
//根据文件名称,自动建立对应目录
if (!System.IO.Directory.Exists(file_path))
System.IO.Directory.CreateDirectory(file_path);
bt.Save(codeUrl);//保存图片
return codeUrl;
}
#endregion
}
}
来源:https://www.cnblogs.com/wml-it/p/14871748.html
标签:C#,网址,生成,二维码
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
IntelliJ IDEA(2020.2)的下载、安装步骤详细教程
2023-11-25 07:10:16
![](https://img.aspxhome.com/file/2023/0/59900_0s.png)
微信第三方登录Android实现代码
2023-07-27 08:05:49
![](https://img.aspxhome.com/file/2023/6/85986_0s.png)
Springboot如何根据实体类生成数据库表
2023-11-20 13:54:39
![](https://img.aspxhome.com/file/2023/7/59677_0s.jpg)
Java Swing组件布局管理器之FlowLayout(流式布局)入门教程
2021-11-08 05:33:06
![](https://img.aspxhome.com/file/2023/1/61581_0s.gif)
SpringBoot在RequestBody中使用枚举参数案例详解
2022-12-15 05:16:30
springboot自动扫描添加的BeanDefinition源码实例详解
2023-11-24 15:15:22
![](https://img.aspxhome.com/file/2023/3/59943_0s.png)
通过java.util.TreeMap源码加强红黑树的理解
2021-07-27 08:45:59
![](https://img.aspxhome.com/file/2023/8/68548_0s.png)
一个JAVA小项目--Web应用自动生成Word
2022-04-30 07:19:56
![](https://img.aspxhome.com/file/2023/4/69134_0s.jpg)
C#中List〈string〉和string[]数组之间的相互转换
2023-07-11 22:33:27
![](https://img.aspxhome.com/file/2023/2/66122_0s.jpg)
支持SpEL表达式的自定义日志注解@SysLog介绍
2023-08-27 09:38:42
深入分析Java内存区域的使用详解
2023-09-25 23:21:29
Java图片裁剪和生成缩略图的实例方法
2023-11-09 00:01:50
![](https://img.aspxhome.com/file/2023/2/59342_0s.png)
idea mybatis配置log4j打印sql语句的示例
2023-11-25 10:32:39
mybatis plus新增(insert)数据获取主键id的问题
2023-08-09 10:50:52
spring boot补习系列之几种scope详解
2022-06-10 13:39:13
![](https://img.aspxhome.com/file/2023/0/78060_0s.png)
使用Java的Lucene搜索工具对检索结果进行分组和分页
2022-07-27 05:21:17
![](https://img.aspxhome.com/file/2023/9/70929_0s.png)
MAC下如何设置JDK环境变量
2023-12-20 16:05:24
![](https://img.aspxhome.com/file/2023/8/72598_0s.jpg)
Java数组(Array)最全汇总(上篇)
2022-12-19 23:22:30
![](https://img.aspxhome.com/file/2023/8/77498_0s.jpg)
Android自定义View之组合控件实现类似电商app顶部栏
2023-07-26 22:14:10
![](https://img.aspxhome.com/file/2023/3/84713_0s.png)
Java中常见的陷阱题及答案
2021-08-10 16:32:11