效果图:

先给之前的群友道个歉,说声不好意思。QRCoder 只支持二维码,没有条形码。

以上demo生成条形码是用 BarcodeLib 这个库,识别是用 zxing,二维码生成用 QRCoder,识别也用 zxing。其实本来不想用 zxing 这个库的。但是 BarcodeLib 只能生成条形码,不能读取条形码,QRCoder只能生成二维码,不能读取二维码。所以就用到了 zxing 这个库。

BarcodeLib 和 QRCoder 都是开源项目。

这两个库有什么优点:

1、没有第三方依赖项。

2、使用简单。

3、速度相对比较快。

当然缺点也很明显,不能识别条形码/二维码。

这两个库都可以使用 nuget 添加到你的项目中。

BarcodeLib

QRCoder

BarcodeLib 生成条形码核心代码:

BarcodeLib.Barcode b = new BarcodeLib.Barcode();
Image img = b.Encode(BarcodeLib.TYPE.UPCA, "", Color.Black, Color.White, , );

QRCoder 生成二维码核心代码:

QRCodeGenerator qrGenerator = new QRCodeGenerator();
QRCodeData qrCodeData = qrGenerator.CreateQrCode("The text which should be encoded.", QRCodeGenerator.ECCLevel.Q);
QRCode qrCode = new QRCode(qrCodeData);
Bitmap qrCodeImage = qrCode.GetGraphic();

以上核心代码很简单,其实是我从 git 里面拷贝贴过来的。但是要比较灵活的使用,就需要自己进行一个简单的封装。

读取条形码和二维码我都是使用了 zxing 这个库。

zxing这个库就比较强大了,既能生成条形码/二维码还能识别条形码/二维码,还能生成pdf,而且适用于多个平台。这些在 git 项目介绍就有说明。

条形码识别代码:

BarcodeReader reader = new BarcodeReader();
Bitmap bitmap = new Bitmap(picBarCode.BackgroundImage);
Result result = reader.Decode(bitmap); // result.Text 就是条形码的内容

二维码识别代码:

BarcodeReader reader = new BarcodeReader();
reader.Options.CharacterSet = "UTF-8";
Bitmap bitmap = new Bitmap(picQRCode.BackgroundImage);
Result result = reader.Decode(bitmap); // result.Text 就是二维码的内容

使用 nuget 将 zxing 这个库添加到自己项目中。

zxing 这个库功能比较强大。如果需要更多的功能以及适应更多平台可以考虑使用zxing。

完整 demo

源代码

C# 二维码/条形码入门操作的更多相关文章

  1. 使用JS调用手机本地摄像头或者相册图片识别二维码/条形码

    接着昨天的需求,不过这次不依赖微信,使用纯js唤醒手机本地摄像头或者选择手机相册图片,识别其中的二维码或者是条形码.昨天,我使用微信扫一扫识别,效果超棒的.不过如果依赖微信的话,又怎么实现呢,这里介绍 ...

  2. 使用IOS7原生API进行二维码条形码的扫描

    使用IOS7原生API进行二维码条形码的扫描 IOS7之前,开发者进行扫码编程时,一般会借助第三方库.常用的是ZBarSDK,IOS7之后,系统的AVMetadataObject类中,为我们提供了解析 ...

  3. Java使用ZXing生成二维码条形码

    一.下载Zxingjar包 本实例使用的是 zxing3.2.0的版本  下载地址 http://pan.baidu.com/s/1gdH7PzP 说明:本实例使用的3.2.0版本已经使用的java7 ...

  4. iOS- 详解如何使用ZBarSDK集成扫描二维码/条形码,点我!

    1.前言 目前市场主流APP里,二维码/条形码集成主要分两种表现形式来集成: a. 一种是调用手机摄像头并打开系统照相机全屏去拍摄 b. 一种是自定义照相机视图的frame,自己控制并添加相关扫码指南 ...

  5. iOS雪花动画、音频图、新闻界面框架、2048游戏、二维码条形码扫码生成等源码

    iOS精选源码 粒子雪花与烟花的动画 iOS 2048游戏 JHSoundWaveView - 简单地声波图.音波图 一个可快速集成的新闻详情界面框架,类似今日头条,腾讯新闻 二维码/条形码扫描及扫描 ...

  6. Excel催化剂开源第26波-Excel离线生成二维码条形码

    在中国特有环境下,二维码.条形码的使用场景非常广泛,因Excel本身就是一个非常不错的报表生成环境,若Excel上能够直接生成二维码.条形码,且是批量化操作的,直接一条龙从数据到报表都由Excel完成 ...

  7. 【小y设计】二维码条形码打印编辑器

    条码打印,价格标签打印,需要对打印进行排版,于是设计了一个简单的编辑器 支持条码二维码打印进行编辑排版,支持文字.图片.条码.二维码.直线,能自由拖拉,删除,并可保存为模版. 界面如下 (下载Demo ...

  8. iOS系统原生二维码条形码扫描

    本文讲述如何用系统自带的东东实现二维码扫描的功能:点击当前页面的某个按钮,创建扫描VIEW.细心的小伙伴可以发现 title被改变了,返回按钮被隐藏了.这个代码自己写就行了,与本文关系不大...绿色的 ...

  9. iOS二维码条形码的制作

    - (IBAction)creatQRImage:(id)sender { [self.textField resignFirstResponder]; //这里是我放了个TextField的控件,但 ...

随机推荐

  1. 3.Longest Substring Without Repeating Characters(string; HashTable)

    Given a string, find the length of the longest substring without repeating characters. For example, ...

  2. fieldOfView

    fieldOfView 属性 fieldOfView:Number 语言版本:  ActionScript 3.0 运行时版本:  Flash Player 10, AIR 1.5 为三维视野指定一个 ...

  3. How Many Answers Are Wrong(带权并查集)

    How Many Answers Are Wrong http://acm.hdu.edu.cn/showproblem.php?pid=3038 Time Limit: 2000/1000 MS ( ...

  4. Java中spring读取配置文件的几种方法

    Spring读取配置XML文件分三步: 一.新建一个Java Bean: package springdemo; public class HelloBean { private String hel ...

  5. 5-Qt读取文件失败原因

    刚开始准备读取当前目录下的txt文件: QFile file(":/xuhao.txt");或者: QFile file("./xuhao.txt"); 但是一 ...

  6. Spring框架的AOP技术之通知类型

    1. 通知类型 * @Before -- 前置通知 * @AfterReturing -- 后置通知 * @Around -- 环绕通知(目标对象方法默认不执行的,需要手动执行) * @After - ...

  7. Halcon开发环境和数据结构介绍——第1讲

    1.Halcon是什么?如何初步了解Halcon? 这点我讲得不太好,不如给大家看看三个链接: ① Halcon官方网站:https://www.mvtec.com/products/halcon/ ...

  8. Microsoft DirectX SDK 2010 版本下载

    Microsoft DirectX SDK 2010 版本下载 Version:Date Published:9.29.19626/7/2010File name:File size:DXSDK_Ju ...

  9. Mybatis Blob和String互转,实现文件上传等。

    这样的代码网上有很多,但是本人亲测有bug, 下面是我写的代码.望参考 @MappedJdbcTypes(JdbcType.BLOB) public class BlobAndStringTypeHa ...

  10. 2018.07.04 POJ 2398 Toy Storage(二分+简单计算几何)

    Toy Storage Time Limit: 1000MS Memory Limit: 65536K Description Mom and dad have a problem: their ch ...