二维码又称QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型:比如:字符,数字,日文,中文等等。这两天学习了一下二维码图片生成的相关细节,觉得这个玩意就是一个密码算法,在此写一这篇文章 ,揭露一下。供好学的人一同学习之。
关于QR Code Specification,可参看这个PDF:http://raidenii.net/files/datasheets/misc/qr_code.pdf
基础知识
首先,我们先说一下二维码一共有40个尺寸。官方叫版本Version。Version 1是21 x 21的矩阵,Version 2是 25 x 25的矩阵,Version 3是29的尺寸,每增加一个version,就会增加4的尺寸,公式是:(V-1)*4 + 21(V是版本号) 更高Version 40,(40-1)*4+21 = 177,所以更高是177 x 177 的正方形。
下面我们看看一个二维码的样例:
定位图案
Position Detection Pattern是定位图案,用于标记二维码的矩形大小。这三个定位图案有白边叫Separators for Postion Detection Patterns。之所以三个而不是四个意思就是三个就可以标识一个矩形了。
Timing Patterns也是用于定位的。原因是二维码有40种尺寸,尺寸过大了后需要有根标准线,不然扫描的时候可能会扫歪了。
Alignment Patterns 只有Version 2以上(包括Version2)的二维码需要这个东东,同样是为了定位用的。
功能性数据
Format Information 存在于所有的尺寸中,用于存放一些格式化数据的。
Version Information 在 >= Version 7以上,需要预留两块3 x 6的区域存放一些版本信息。
数据码和纠错码
除了上述的那些地方,剩下的地方存放 Data Code 数据码 和 Error Correction Code 纠错码。
数据编码
一、微信被拉黑帮忙怎么找黑客 1、攻击棋牌平台黑客没有人敢定义黑客。微信被拉黑帮忙小璇官方在一个世纪里,有人去了宇宙,更不用说这个家伙现在必须在网上支付300英镑的押金了。哦,在规定的时间内没有完成。...
《亚森·罗宾》第一季海报 Netflix现象级原创法剧《亚森·罗宾》宣布续订第二季,定档夏季开播。该剧1月8日上线,10天前Netflix称在上线首个28天/四星期内...
上海普陀的男士会所哪个好,高档自然环境,私人定制,非常值得一去~ SPA指的是将水源与淋浴、推拿、护理用品的运用和芳疗紧密结合,以推动基础代谢,考虑身体的视觉效果、味蕾、听觉系统、触感和味觉,完成心...
在我写这篇文章之前,我真的需要问大家几个问题: 1、你赚到钱了吗? 2、你现在做的还是技术吗? 3、你思考过你工作的意义了吗? 4、你想过为什么自己没赚到钱吗? 5、你还打算过多久这样的生活...
微商的突然爆发,让很多企业按捺不住,纷纷越过传统经销商,直接与消费者开始商品交易,尤其是化妆品行业。微商的出现,打破了商业的边界,让创业不再是孤注一掷,让创业不再是经历违心的谄媚。 微商是什么 微...
打印机是办公室人员经常会用到的设备,可是最近有windows7系统用户在安装完打印机之后,却发现检测不到打印机,导致无法进行打印,遇到这样的问题该如何解决呢?接下来给大家讲解一下Windows...