一、什么是码制?
二维条形码也有许多不同的编码方法,或称码制。就这些码制的编码原理而言,通常可分为以下三种类型
1. 线性堆叠式二维码
是在一维条形码编码原理的基础上,将多个一维码在纵向堆叠而产生的。典型的码制如:Code 16K、Code 49、PDF417等。
2. 矩阵式二维码
是在一个矩形空间通过黑、白像素在矩阵中的不同分布进行编码。典型的码制如: Aztec、Maxi Code、QR Code、 Data Matrix等。
3. 邮政码
通过不同长度的条进行编码,主要用于邮件编码,如:Postnet、BPO 4-State。
在许多种类的二维条形码中,常用的码制有:Data Matrix, Maxi Code, Aztec, QR Code, Vericode, PDF417, Ultracode, Code 49, Code 16K 等,其中:
* Data Matrix 主要用于电子行业小零件的标识,如Intel的奔腾处理器的背面就印制了这种码。
* Maxi Code 是由美国联合包裹服务(UPS)公司研制的,用于包裹的分拣和跟踪。
* Aztec 是由美国韦林(Welch Allyn)公司推出的,最多可容纳3832个数字或3067个字母字符或1914个字节的数据。
二、常用二维码对比
三、QR CODE 介绍
QR(Quick-Response) code是被广泛使用的一种二维码,解码速度快。它可以存储多用类型。如下图时一个qrcode的基本结构,其中:位置探测图形、位置探测图形分隔符、定位图形:用于对二维码的定位,对每个QR码来说,位置都是固定存在的,只是大小规格会有所差异;校正图形:规格确定,校正图形的数量和位置也就确定了;格式信息:表示改二维码的纠错级别,分为L、M、Q、H;版本信息:即二维码的规格,QR码符号共有40种规格的矩阵(一般为黑白色),二维码一共有40个尺寸。官方叫版本Version。从21x21(版本1),公式是:(V-1)*4 + 21(V是版本号) 最高Version 40,到177x177(版本40),每一版本符号比前一版本 每边增加4个模块。数据和纠错码字:实际保存的二维码信息,和纠错码字(用于修正二维码损坏带来的错误)。
四、QR二维码容错级别
*纠错级别越高,整体需要携带的信息越多
L级可纠正约7%错误;
M级别可纠正约15%错误;
Q级别可纠正约25%错误;
H级别可纠正约30%错误;
五、qrcode的基本结构六、简要的编码过程
1.数据分析:
确定编码的字符类型,按相应的字符集转换成符号字符;
选择纠错等级,在规格一定的条件下,纠错等级越高其真实数据的容量越小。
2.数据编码:
将数据字符转换为位流,每8位一个码字,整体构成一个数据的码字序列。其实知道这个数据码字序列就知道了二维码的数据内容。
数据可以按照一种模式进行编码,以便进行更高效的解码。
例如:对数据:01234567编码(版本1-H)
1)分组:012 345 672)
2)转成二进制:012→0000001100 345→0101011001 67 →10000113) 转成序列:0000001100 0101011001 10000114)
3)字符数 转成二进制:8→00000010005)
4)加入模式指示符(上图数字)0001:0001 0000001000 0000001100 0101011001 1000011
5)对于字母、中文、日文等只是分组的方式、模式等内容有所区别。基本方法是一致的
七、活码的原理
八、二维码的安全性
二维码本身是一串文本,不会含有病毒,木马和恶意扣费软件。目前主要的安全问题是二维码到一个手机应用的下载链接,这个手机应用包含病毒,木马、广告和恶意扣费内容。推荐从权威的网站和可靠的印刷品上扫描。对扫描的内容的可信度请保持谨慎态度。如果扫描内容显示正在下载应用,请谨慎安装。做到以上两点,就放心大胆地扫描吧。
九、生成二维码
可测试使用草料二维码:http://cli.im/
可参考网站:
二维码原理介绍:http://jingyan.baidu.com/article/86f4a73e520e3b37d6526981.html
二维码的生成细节和原理:http://www.kuqin.com/shuoit/20131229/337278.html