二维码比条形码具有更多优势,有些场合使用二维码比较多,比如支付。通过将某些数据生成二维码,就可以实现一码走天下。那么如何在C#,.Net平台代码里生成二维码呢?答案是使用SharpBarcode!
SharpBarcode是C#快速高效、准确的条形码,线性条码,QR二维码的读取和生成类库。接口调用简单,文档齐全。

初识SharpBarcode

您可以点击下面的链接了解更多信息:
1、SharpBarcode简介
2、一张图看懂SharpBarcode

生成二维码

从上面的两篇文章中,相信您已经大概了解了该类库。那么如何实现生成二维码呢?对!就是BarcodeWriteEngine的静态方法!
该类可以同时生成条形码和QR二维码,生成QR二维码的方法就是CreateQrCode及其重载方法。

设置授权码

在您调用SharpBarcode的方法之前,必须先设置授权,如果是试用版,直接传入Test即可。

//设置授权码
KeyMgr.SetKey("Test");

调用BarcodeWriteEngine的静态方法CreateQrCode

SharpBarcode支持将字符串以及二进制字节流作为内容,写入二维码。
这里演示将字符串生成一个二维码。同时SharpBarcode支持对生成的条形码或者二维码进行样式调整,比如背景色、条码的颜色、添加边距、设置宽高大小等等。
也支持对生成的结果进行多种格式的保存和导出。比如保存为Bitmap类对象,或者是jpg、png、bmp、tiff、gif、pdf等格式文件,或者DataURL,html等格式。这些都是通过GeneratedBarcode类的方法来实现的。
GeneratedBarcode类是生成条形码和二维码的一个核心类,BarcodeWriteEngine的任何一个方法,无论是生成的条形码,还是QR二维码,都是返回GeneratedBarcode类型。您可以通过GeneratedBarcode类的方法调整后,进行导出和保存。

			//将指定的字符串,按照指定大小生成qr二维码,结果保存到GeneratedBarcode类中.CreateQrCode有许多重载,可以满足您的多样化需求
GeneratedBarcode result = BarcodeWriteEngine.CreateQrCode("SharpBarcode,专业的.NET条形码和QR二维码读写类库SDK.", 350); //GeneratedBarcode类提供了丰富的接口,可以用来对生成的结果进行
//调整,比如调整背景颜色,添加边距,加注释等,也可以将生成的结果以多种方式保存,比如保存为图片,保存为html,保存为pdf,保存为
//dataURL等。
pictureBox1.Image = result.ToBitmap(); MessageBox.Show("下面开始对生成的二维码调整背景色");
result.ChangeBackgroundColor(Color.AliceBlue);
pictureBox1.Image = result.ToBitmap(); MessageBox.Show("下面开始对生成的二维码调整二维码颜色");
result.ChangeBarCodeColor(Color.Red);
pictureBox1.Image = result.ToBitmap(); MessageBox.Show("下面开始对生成的二维码调整大小");
result.ResizeTo(250,250);
pictureBox1.Image = result.ToBitmap(); MessageBox.Show("下面开始对生成的二维码设置边距");
result.SetMargins(50);
pictureBox1.Image = result.ToBitmap(); MessageBox.Show("下面开始对生成的二维码转换为dataUrl字符串");
MessageBox.Show(result.ToDataUrl()); MessageBox.Show("下面开始对生成的二维码转换为html img标签");
MessageBox.Show(result.ToHtmlTag()); MessageBox.Show("下面开始对生成的二维码保存为jpg图片");
if(saveFileDialog1.ShowDialog() == DialogResult.OK)
{
result.SaveAsJpeg(saveFileDialog1.FileName); MessageBox.Show("已保存!");
}

程序运行结果如下图:

下载示例源码

点击下载源码

C# vb .NET生成QR二维码的更多相关文章

  1. pbfunc外部函数扩展应用-直接在Datawindow中生成QR二维码,非图片方式

    利用pbfunc外部函数在Datawindow中直接生成QR二维码,非图片方式.需要注意以下面几点: Datawindow的DataObject的单位必须为像素(Pixels). Datawindow ...

  2. Google API快速生成QR二维码

    Google API快速生成QR二维码 现在来说生成二维码最简单的方法是使用Google Chart API来实现,再次膜拜Google大神- Google Chart API是一套可以让你在线生成报 ...

  3. ThoughtWorks.QRCode 生成QR二维码时提示“索引超出了数组界限”的原因和解决方法

    "索引超出了数组界限"也有可能确实是因为你选择的二维码Version对应的容量不足以存储你所放的内容,如果你确定使用的版本容量二维码能存储你的内容,但还是报错,那么再考虑此解决方法 ...

  4. [AX2012 R3]在SSRS报表中使用QR二维码

    AX2012是自带生成QR二维码的类,可以很方便的用在SSRS报表中,下面演示如何在RDP的报表中使用二维码,首先从定义临时表开始: 字段URL是要用于二维码的字符串,QrCode是container ...

  5. Android应用--QR的生成(二维码)

    二维码的定义: 二维码(2-dimensional bar code),是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的. 在许多种类的二维条码中,常用的码制 ...

  6. C# vb .NET识别读取QR二维码

    二维码比条形码具有更多优势,有些场合使用二维码比较多,比如支付.那么如何在C#,.Net平台代码里读取二维码呢?答案是使用SharpBarcode! SharpBarcode是C#快速高效.准确的条形 ...

  7. c#高效准确的条形码、线性条码、QR二维码读写类库-SharpBarcode介绍

    SharpBarcode是一款支持.NET(C#,VB)的高效易用的条形码.QR二维码的读取和生成类库. 主要功能: 1.支持几乎所有常见类型的线性条形码和QR二维码的读取,高效读取,准确率高. 2. ...

  8. QR 二维码总结

    @(Java ThirdParty)[QR] QR 二维码总结 根据Wiki中的介绍,QR Code(Quick Response Code),二维条形码,由日志设计应用于汽车制造工业中.条形码中包含 ...

  9. 【转】Delphi+Halcon实战一:两行代码识别QR二维码

    Delphi+Halcon实战一:两行代码识别QR二维码 感谢网友:绝代双椒( QQ号应原作者要求隐藏了:xxxx6348)的支持 本文是绝代双椒的作品,因为最近在忙zw量化培训,和ziwang.co ...

随机推荐

  1. android studio 出现找不到R文件的错误

    百度知道: 检查是否编译了项目.Android studio有时候没有编译就会报出没有R文件的错误. 检查带代码中包名是否正确.有时候从其他地方复制代码过来时连带了包名,也会报出R文件找不到. 检查布 ...

  2. Java日期时间API系列4-----Jdk7及以前的日期时间类的线程安全问题

    1.Date类为可变的,在多线程并发环境中会有线程安全问题. (1)可以使用锁来处理并发问题. (2)使用JDK8  Instant 或 LocalDateTime替代. 2.Calendar的子类为 ...

  3. Python对文件的读写操作

    Python使用open函数来读写文件,open函数的第一个参数是文件名,第二个参数是可选的,有4种常见模式:(1)r 打开一个文件来读数据,这是默认模式:(2)w 打开一个文件来写数据,如果文件已有 ...

  4. [b0007] windows 下 eclipse 开发 hdfs程序样例

    目的: 学习使用hdfs 的java命令操作 相关: 进化: [b0010] windows 下 eclipse 开发 hdfs程序样例 (二) [b0011] windows 下 eclipse 开 ...

  5. Python中 if __name__ == '__main__' 的作用

    Python文件可以直接运行,也可以 import 到其它文件中使用 if __name__ == '__main__' 就是控制代码在这两种情况下的执行过程 每个Python模块都包含内置变量,直接 ...

  6. emacs require和provide

    Emacs的默认配置文件是.emacs,Emacs启动时会读取并执行.emacs中的LISP代码,用户使用.emacs达到自己的Emacs初始化配置目的. 不过单独使用.emacs有一个问题,因为时间 ...

  7. 让Windows的文件名区分大小写

    背景 最近在Linux官网下载了Linux内核,下载下来的是一个后缀为.tar.xz的压缩包,于是在毫不知情的情况下随随便便解压了,解压过程中出现了很多问题. 其中一个问题就是在Windows下,不区 ...

  8. 【转】gdb的调试与使用

    转载自:https://www.jianshu.com/p/7a06b0bda2d8 gdb的调试与使用 这篇应该是我见过的总结最详细的gdb调试指南了,这位博主是个很强的人,他的博客对萌新比较友好, ...

  9. git报错_you are not allowed to push code to protected branches on this project

    问题描述 今天在提交代码的时候,由于使用的是新库,写完代码后,进行push,发现报错 you are not allowed to push code to protected branches on ...

  10. js --自动播放音频

    简介 基本使用 chrome下无法自动播放问题处理 简介 音频的播放使用audio进行操作,可以有两种方式处理(纯js和html标签+js). audio是html5的新标签,用于定义声音 audio ...