使用phpqrcode类库生成二维码这里我们只需要了解一个类库中的方法:
1、原型:
public static function png($text, $outfile = false, $level = QR_ECLEVEL_L, $size = 3, $margin = 4, $saveandprint=false, $back_color = 0xFFFFFF, $fore_color = 0x000000)
{
$enc = QRencode::factory($level, $size, $margin, $back_color, $fore_color);
return $enc->encodePNG($text, $outfile, $saveandprint=false);
}
$text表示生成二位的的信息文本;
$outfile表示是否输出二维码图片文件,默认否;
$level表示容错率,也就是有被覆盖的区域还能识别,分别是L(QR_ECLEVEL_L,7%),M(QR_ECLEVEL_M,15%),Q(QR_ECLEVEL_Q,25%),H(QR_ECLEVEL_H,30%);
$size表示生成图片大小,默认是3;
$margin表示二维码周围边框空白区域间距值;
$saveandprint表示是否保存二维码并显示。
3、事例:
实例一:
<?php
//引入类
include "phpqrcode-master/phpqrcode.php";
//准备数据
$data="http://www.baidu.com";
//生成文件的名字
$dirname="test.png";
//错误的级别 L M Q
$error="L";
$matSize=20;
//静态
QRcode::png($data,$dirname,$error,$matSize,2);
QRcode::png($data);
实例二(容易接受吧):
<?php
include "phpqrcode-master/phpqrcode.php";
QRcode::png('http://www.baidu.com');
4、如果要加上logo,即可以生成的图片创建图层。再利用 PHP中的GD函数库中介绍的方法贴图即可。
5、给二维码添加logo:
include 'phpqrcode.php';
$value = 'http://www.helloweba.com'; //二维码内容
$errorCorrectionLevel = 'L';//容错级别
$matrixPointSize = 6;//生成图片大小
//生成二维码图片
QRcode::png($value, 'qrcode.png', $errorCorrectionLevel, $matrixPointSize, 2);
$logo = 'logo.png';//准备好的logo图片
$QR = 'qrcode.png';//已经生成的原始二维码图
if ($logo !== FALSE) {
$QR = imagecreatefromstring(file_get_contents($QR));
$logo = imagecreatefromstring(file_get_contents($logo));
$QR_width = imagesx($QR);//二维码图片宽度
$QR_height = imagesy($QR);//二维码图片高度
$logo_width = imagesx($logo);//logo图片宽度
$logo_height = imagesy($logo);//logo图片高度
$logo_qr_width = $QR_width / 5;
$scale = $logo_width/$logo_qr_width;
$logo_qr_height = $logo_height/$scale;
$from_width = ($QR_width - $logo_qr_width) / 2;
//重新组合图片并调整大小
imagecopyresampled($QR, $logo, $from_width, $from_width, 0, 0, $logo_qr_width,
$logo_qr_height, $logo_width, $logo_height);
}
//输出图片
imagepng($QR, 'helloweba.png');
echo '<img src="helloweba.png">';
本文详细介绍如何使用PHPQRCODE类库生成二维码,并提供添加Logo的示例代码。包括了参数配置说明及两个实用的例子。

5556

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



