博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用ZXing.dll库生成二维码(C#实现)
阅读量:5261 次
发布时间:2019-06-14

本文共 1832 字,大约阅读时间需要 6 分钟。

最近工作中有需要一个需求,就是把一个服务地址生成二维码,可以用来扫码分享,网上找了下方法也比较多,我这里po一下调用ZXing.dll库生成二维码的方法吧。先简单介绍一下 ZXing库,ZXing库是一个开源Java类库,可用于生成和解析多种格式的1D/2D条形码;zxing遵循Apache License 2.0,只是工具而已,是不收费哒。

ZXing库的下载地址:

点击下载下载后解压压缩包:

把Zxing加到工程应用中,以下为核心代码:

1 ///  2         /// 生成二维码图片 3         ///  4         /// 要生成二维码的字符串 5         /// 二维码图片宽度 6         /// 二维码图片高度 7         /// 
8 private Bitmap GetQRCodeByZXingNet(String strMessage,Int32 width,Int32 height) 9 {10 Bitmap result = null;11 try12 {13 BarcodeWriter barCodeWriter = new BarcodeWriter();14 barCodeWriter.Format = BarcodeFormat.QR_CODE;15 barCodeWriter.Options.Hints.Add(EncodeHintType.CHARACTER_SET, "UTF-8");16 barCodeWriter.Options.Hints.Add(EncodeHintType.ERROR_CORRECTION, ZXing.QrCode.Internal.ErrorCorrectionLevel.H);17 barCodeWriter.Options.Height = height;18 barCodeWriter.Options.Width = width;19 barCodeWriter.Options.Margin = 0;20 ZXing.Common.BitMatrix bm = barCodeWriter.Encode(strMessage);21 result = barCodeWriter.Write(bm);22 }23 catch (Exception ex)24 { 25 //异常输出26 }27 return result;28 }

看一下生成二维码的效果:

 

同时  Zxing库也支持对二维码图片解码

解码的核心代码如下:

///         /// 解码二维码        ///         /// 待解码的二维码图片        /// 
扫码结果
private string DecodeQrCode(Bitmap barcodeBitmap) { BarcodeReader reader = new BarcodeReader(); reader.Options.CharacterSet = "UTF-8"; var result = reader.Decode(barcodeBitmap); return (result == null) ? null : result.Text; }

看一下效果:

随便找了个二维码:

扫码结果如下:

 

转载于:https://www.cnblogs.com/mohanchen/p/7086902.html

你可能感兴趣的文章
java 常用命令
查看>>
卷积中的参数
查看>>
51nod1076 (边双连通)
查看>>
Item 9: Avoid Conversion Operators in Your APIs(Effective C#)
查看>>
深入浅出JavaScript(2)—ECMAScript
查看>>
ViewPager的onPageChangeListener里面的一些方法参数:
查看>>
Jenkins关闭、重启,Jenkins服务的启动、停止方法。
查看>>
CF E2 - Array and Segments (Hard version) (线段树)
查看>>
Linux SPI总线和设备驱动架构之四:SPI数据传输的队列化
查看>>
SIGPIPE并产生一个信号处理
查看>>
CentOS
查看>>
Linux pipe函数
查看>>
java equals 小记
查看>>
爬虫-通用代码框架
查看>>
2019春 软件工程实践 助教总结
查看>>
YUV 格式的视频呈现
查看>>
现代程序设计 作业1
查看>>
在android开发中添加外挂字体
查看>>
Zerver是一个C#开发的Nginx+PHP+Mysql+memcached+redis绿色集成开发环境
查看>>
多线程实现资源共享的问题学习与总结
查看>>