|
PHP生成带LOGO的二维码,这段有个小项目要用到二维码生成,索性就查了些资料,发现有一个PHP 类库phpqrcode对生成这种二维码很方便,索性就测试了一下,下面把自己的用法和代码与菜鸟分享,希望高手鼓励哦。
首先你需要下载这个类库包,或者我后边会附上这个类库,具体的使用代码:
1、生成基本的二维码单元,不带Logo的:
<?php
//文件输出
include('phpqrcode.php');
// 二维码数据
$data = 'http://www.codesc.net';
// 生成的文件名
$filename = 'ewm.png';
// 纠错级别:L、M、Q、H
$errorCorrectionLevel = 'L';
// 点的大小:1到10
$matrixPointSize = 4;
QRcode::png($data, $filename, $errorCorrectionLevel, $matrixPointSize, 2);
?>
2、生成标准的和带Logo的二维码单元 :
<?php
include ('phpqrcode.php');
$value = 'http://www.codesc.net';//二维码数据
$errorCorrectionLevel = 'L';//纠错级别:L、M、Q、H
$matrixPointSize = 10;//二维码点的大小:1到10
QRcode::png ( $value, 'ewm.png', $errorCorrectionLevel, $matrixPointSize, 2 );//不带Logo二维码的文件名
echo "二维码已生成" . "<br />";
$logo = 'emwlogo.gif';//需要显示在二维码中的Logo图像
$QR = 'ewm.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_height = imagesy ( $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, 'ewmlogo.png' );//带Logo二维码的文件名
?>
phpqrcode.php类库下载:
http://sourceforge.net/projects/phpqrcode/
http://www.codesc.net/source/3782.shtml
二维码完整生成实例下载:
http://www.codesc.net/source/3781.shtml |
|
|