昨天吧生成QR二维码的功能加入到PumaFramework里面做演示例子了,用了zxing和d_project的开源项目。
本来是参照OSChina中的实现方式的,他们使用google的zxing来解码的,用d_project来编码的。我用了d_project最新的版本,貌似有点问题,解决了中文问题后,使用效果不是特别理想,容纳字符数量不多。后来还是该共zxing来编码了。
使用d_project时候,由于是日本人写的,文档没有,只能看源码的api介绍了,用了google的translator,大概了解一点了。d_project的参数设置比较灵活,所以需要了解一些二维码的基本设置的概念。zxing就傻瓜很多,但是效果也不错。
QR二维码是目前最常用二维码
是把字符串编码后通过二维图片的黑白两色模块显示出来
可表示的字符串长度和 容错率(ECC) 显示编码模式(EncodeMode)及版本(Version)有关
容错率共四档:
L 7%
M 15%
Q 25%
H 30%
编码模式:
Numeric 数字
Alphanumeric 英文字母
Binary 二进制
Kanji 汉字
版本(Version):
1-40 共40个版本
1 21x21模块
40 177x177模块
每增加一个版本每边增加4个模块 ,如: 版本2 为25x25模块
以下两张图片是字符串'www.sohu.com'的二维码使用了不同的版本的效果
版本1 版本7
附:
一般来说:
可容纳多达1850个大写字母或2710个数字或1108个字节,或500多个汉字
每个版本不同容错率可表示长度可在这里查看http://www.qrcode.com/en/vertable1.html