1.二维码概述
二维条码/二维码(2-dimensional bar
code)是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的;在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念。一维条码/条形码:是由一组粗细不同、黑白(或彩色)相间的条、空及其相应的字符(数字字母)组成的标记,即传统条码。
二维条码是用某种特定的几何图形按一定规律在平面(二位方向)上分布的条、空相间的图形来记录数据符号信息。
2.二维码的分类
根据编码原理:
- 先行堆叠式二维码:堆叠式/行排式二维条码其编码原理是建立在一维条码基础上,按需要堆积成二行或多行。
- 矩阵式二维码:矩阵式二维条码(又称棋盘式二维条码)是在一个矩形空间通过黑、白像素在矩阵中的不同分布进行编码。在矩阵相应元素位置上,用点(方点、圆点或其他形状)的出现表示二进制“1”,点的不出现表示为二进制的“0”
3.二维码的优缺点
优点:
- 信息容量大;
- 编码范围广;
- 容错能力强;(部分缺失不影响功能)
- 驿马可靠性高;
- 可引入加密措施;
- 成本低,易制作 缺点:
- 二维码技术成为手机病毒、钓鱼网站传播的新渠道;
- 信息泄密;
4.OR Code介绍
目前留下的三大国际标准:
- PDF417:不支持中文;
- DM:专利未公开,需支付专利费用;
- QR Code:专利公开,支持中文 与其他二维码相比,具有识读速度快、数据密度大、占用空间小等优势。 Quick Response Code。
纠错能力(二维码被破坏时,依然可以保持数据的完整性):
- L级:约可纠错7%的数据码字;
- M级:约可纠错15%的数据码字;
- Q级:约可纠错25%的数据码字;
- H级:约可纠错30%的数据码字
5 php 生成QR Code
-
下载phpqrcode源码:https://sourceforge.net/projects/phpqrcode/files/latest/download
-
解压后复制到项目文件夹
-
编写代码
<?php
include_once 'phpqrcode/qrlib.php';
/**
* png函数的参数:
* $text:保存的文本内容;
* $outfile:是否输出为文件,默认false
* $level:纠错能力级别
* $size:大小
* $margin:边距
* $saveandprint:是否保存并打印,默认false
*/
//QRCode::png('abc');
QRCode::png('abc1', 'abc1.jpg'); // 浏览器不输出,保存为图片
//QRCode::png('abc', false, QR_ECLEVEL_L, 10, 0);
QRCode::png('abc2', 'abc_2.jpg', QR_ECLEVEL_L, 10, 0, true);
abc1.jpg

abc_2.jpg

Alt+鼠标左键,点击"png”进入png函数的源码,就会发现这里有bug,设置了saveandprint的值固定是false,而没有接收传进来的值,导致无法打印并保存。这里只需要把“=false”去掉即可。
3721




被折叠的 条评论
为什么被折叠?



