本篇讲述如何生成带自定义logo的二维码。
首选需要下载一个二维码包,这个在百度里搜一下,都有免费下的。下载后的到一个文件夹名为:phpqrcode 。如要装载,请著名来源:http://blog.csdn.net/qq_22327455,谢谢。下面开始看代码。
<?php
header("Content-Type: text/html; charset=utf-8"); //调试时开启
error_reporting(E_ALL); //调试时开启
include "./phpqrcode/phpqrcode.php"; // 引入类文件
$value = ‘http://www.baidu.com‘; // 二维码的内容,其实就是一个链接
$errorCorrectionLevel = ‘L‘;// 这是容错级别
$matrixPointSize = 6;// 生成图片的大小
//生成二维码图片
QRcode::png($value, ‘qrcode.png‘, $errorCorrectionLevel, $matrixPointSize, 2);
//到这里二维码图片就已经生成了,图片名字为:qrcode.png 你可以用 <img src=‘qrcode.png‘ />来查看
//现在我们要把自己准备好的logo图片放置到上面生成的二维码图片中。这用到GD库了。做这个操作前,请先确认你的系统是否有开启GD库,具体开启方法这里不阐述了。
//下面开始加logo进去。。。注意:在项目中,这个Logo路径最好写绝对路径,我开始写的相对路径,一直出不来,后来换成绝对路径就OK了。
$logo = dirname(__FILE__).‘/images/logo.png‘;
$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, ‘my_erweima.png‘);
echo ‘<img src="my_erweima.png">‘;
?>
快速生成二维码
原文:http://blog.csdn.net/qq_22327455/article/details/44239895