什么是QR Code码?

QR Code码是由日本Denso公司于1994年9月研制的一种矩阵二维码符号,它具有一维条码及其它二维条码所具有的信息容量大、可靠性高、可表示汉字及图象多种文字信息、保密防伪性强等优点。

QR Code码符号的基本特性

符号规格 21×21模块(版本1)-177×177 模块(版本40)
(每一规格:每边增加4个模块)
数据类型与容量 · 数字数据 :7,089个字符
  · 字母数据 :4,296个字符
(指最大规格符号版本40-L级) · 8位字节数据 :2,953个字符
  · 中国汉字、日本汉字数据 :1,817个字符
数据表示方法 深色模块表示二进制“1”,浅色模块表示二进制“0”。
纠错能力 · L级:约可纠错7%的数据码字
· M级:约可纠错15%的数据码字
· Q级:约可纠错25%的数据码字
· H级:约可纠错30%的数据码字
结构链接(可选) 可用1-16个QR Code码符号表示一组信息
掩模(固有) 可以使符号中深色与浅色模块的比例接近1:1,使因相邻模块的排列造成译码困难的可能性降为最小。
扩充解释(可选) 这种方式使符号可以表示缺省字符集以外的数据(如阿拉伯字符、古斯拉夫字符、希腊字母等),以及其他解释(如用一定的压缩方式表示的数据)或者对行业特点的需要进行编码。
独立定位功能

QRCODE二维码版本展示

QR码符号共有40种规格,分别为版本1、版本2„„版本40。版本1的规格为21模块×21模块,版本2为25模块×25模块,以此类推,每一版 本符号比前一版本每边增加4个模块,直到版本40,规格为177模块×177模块。其中最高版本40可容纳多达1850个大写字母或2710个数字或 1108个字节,或500多个汉字,比普通条码信息容量约高几十倍。由于其高密度编码,信息容量大,所以被广泛采用。

下图1为版本2的示意图(共25模块×25模块):

图1

如果你使用智能手机二维码拍拍,上图就是一个网址的链接“http://www.lgms.net”。访问它,就可以直接进入一个网站。

这起到了一个什么作用呢?连接物理世界与虚拟世界的桥梁。所以,有人将它比喻为“物联网的传感器”。这不是我们的重点,不再赘述。下面说说二维码的结构。

先看下图2:

图2

图3   QRCODE 版本1和2的结构示意图

图4   图1的彩色化版本

图5

常见QRCODE二维码控件推荐

目前用于程序开发的条码产品主要分为条码字体及条码控件两大类,条码字体可以非常方便的作为一种特殊的字体在应用程序或OFFICE中输出,而条码控件主要用于嵌入到软件中,客户端浏览不需要字体支持。

这里向大家推荐2款功能强大的二维码控件。它们分别是 LEADTOOLS 2D Barcode SDK Module 和 Complete Barcode Package 条码控件。

LEADTOOLS 2D Barcode SDK Module是市场上最全面的条形码工具包,它支持100多种条形码的读写,其中包括所有主要的1D和2D条形码。并且它包含许多有源代码的演示项目,这些源代码包含C, Visual C++ (MFC), VB.NET 和C#的版本。

DAutomation QR Code Barcode Font and Encoder是一个组件集合,可以使用字体和图形生成QR-Code条形码符号。QR-Code是一种二维(2D)矩阵类型的条形码符号集,它与Data Matrix和Aztec相似,都具有编码大数据量的能力。

(转)QRCODE二维码介绍及常用控件推荐的更多相关文章

  1. Android开发 QRCode二维码开发第三方框架

    前言 Android开发里二维码开发经常用到,这里简单的介绍下Android开发里的二维码. 最广泛使用的二维码库zxing zxing是最广泛的二维码库各个平台都可以适用它,但是Android平台使 ...

  2. jQuery生成QRcode二维码

    jQuery生成QRcode二维码示例 <!DOCTYPE html> <html> <head> <meta charset="utf-8&quo ...

  3. PHP生成QRCode二维码

    php生成QRCode二维码示例 <?php //引入 phpqrcode 类库 //phpqrcode下载地址:https://github.com/t0k4rt/phpqrcode //或从 ...

  4. 用CIFilter生成QRCode二维码图片

    用CIFilter生成QRCode二维码图片 CIFilter不仅仅可以用来做滤镜,它还可以用来生成二维码. CIFilterEffect.h + CIFilterEffect.m // // CIF ...

  5. 用Java画QRCode二维码

    支付宝.微信扫码支付的二维码,第三方的类库QRCode.jar 还是很好用的.下面贴出来这个东东生成二维码的代码. 使用时注意包括图片地址.编码内容.图片属性等几个参数,支付宝的它们的扫码回调地址. ...

  6. C# QRCode 二维码

    /*********************************************************************** * C# QRCode 二维码 * 说明: * 本文记 ...

  7. QRCode二维码生成方案及其在带LOGO型二维码中的应用(1)

    原文:QRCode二维码生成方案及其在带LOGO型二维码中的应用(1) 提要:很多公司为商业宣传之需,常将企业LOGO加入二维码中,但如果LOGO遮挡区域足够地大,二维码就变得无法识别.那么,有没有一 ...

  8. QRCode二维码生成方案及其在带LOGO型二维码中的应用(2)

    原文:QRCode二维码生成方案及其在带LOGO型二维码中的应用(2) 续前:QRCode二维码生成方案及其在带LOGO型二维码中的应用(1)  http://blog.csdn.net/johnsu ...

  9. 隐藏在QRCode二维码背后的秘密

    原文:隐藏在QRCode二维码背后的秘密 隐藏在QRCode二维码背后的秘密,您知道吗? 1.容错级. 二维码的容错级分别为:L,M,Q和H.其中,L最低,H最高.如何从二维码中一眼看出其容错级别呢? ...

随机推荐

  1. 射频识别技术漫谈(2)——国际标准【worldsing 笔记】

    如果你只是智能卡的用户,通常可以不必关注国际标准,但作为智能卡的专业开发人员,则至少也要对相关标准有所了解.国际标准一般都是西方人制定的,原版都是英文的,而所谓中文版往往是对原版的直译,许多情况下并未 ...

  2. define

    define('player',['videoplay'],function(videoplay){ var wrap_player = $('#live_SWF'), obj_player = '' ...

  3. 读取.tmx地图

    读取.tmx地图 m_GameMap = CCTMXTiledMap::create("map1.tmx"); this->addChild(m_GameMap,1); 读取 ...

  4. iphone 3G\3GS 超详细拆机教程

    更为直观的iphone视频拆机教程: http://bbs.app111.com/thread-243147-1-1.html 第一步: 准备好所需工具 iphone一台....吸盘一个..屏幕布一块 ...

  5. Android 上拉加载更多功能

    前几天看了github上面的例子,参照它的实现,自己又稍微改了一点,往项目里面增加了一个上拉加载更多功能.具体的实现如下: 首先要重写ListView: import android.content. ...

  6. Gitbook安装

    Gitbook安装 Gitbook是从NMP安装的,命令行: $ npm install gitbook -g 安装完之后,你可以检验下是否安装成功: $ gitbook -V 0.4.2 如果你看到 ...

  7. Unable to read TLD "META-INF/c.tld"错误

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  8. [React Native] Create a component using ScrollView

    To show a list of unchanging data in React Native you can use the scroll view component. In this les ...

  9. iOS开发——数据持久化Swift篇&iCloud云存储

    iCloud云存储 import UIKit class ViewController: UIViewController { override func viewDidLoad() { super. ...

  10. hibernate uniqueResult方法

    假设查询返回多个值用list()方法 public void testQuery(){ Configuration config = new Configuration().configure(); ...