更多>>PHP程序设计 Blog
来源:一度好 时间:2021-11-03 阅读:2820
使用 phpqrcode 生成二维码图片以及生成带 LOGO 的二维码图片
实例使用说明:
1. 引用类文件
2. 参数配置
3. 保存配置
4. 生成二维码
5. 给二维码图片添加 LOGO
文末附有 phpqrcode 类文件的下载
注意事项:
(1)默认生成的二维码图片是直接在浏览器中打开显示的。
(2)想让生成二维码图片保存到本地或服务器,需要在第2步中把参数 $qr_outfile 设置为 true。
(3)想生成带LOGO的二维码,除需要准备一个LOGO图片外,还需要在第2步中把参数 $qr_outfile 设置为 true。
完整代码如下:
// 1. 引用类文件
require_once 'phpqrcode.php';
// 2. 参数配置
$qr_text = 'http://www.yiduhao.com/'; // 二维码内容
$qr_outfile = false; // 是否保存二维码图片到本地或服务器, 默认值 false
$qr_level = 'L'; // 纠错级别: L, M, Q, H, 默认值 L
$qr_size = 6; // 图片大小, 默认值 3
$qr_margin = 4; // 二维码图片,内容部分距离边界的白色间距, 默认值 4
// 3. 保存配置
$qr_outfile_path = false;
if ($qr_outfile == true) {
// 设置保存路径
$full_save_path="./qr/";
if (!file_exists($full_save_path)) {
mkdir($full_save_path,0777);
}
$file_name = 'def'; // 二维码图片文件名
$qr_outfile_path = $full_save_path.$file_name.'.png'; // 生成的路径文件名
}
// 4. 生成二维码
QRcode::png($qr_text, $qr_outfile_path, $qr_level, $qr_size, $qr_margin, false);
// 5. 给二维码图片添加 LOGO
$is_add_logo = false; // 是否添加 LOGO, 默认 false
if ($is_add_logo == true && $qr_outfile == true) {
$logo = 'c.png'; // 准备好的 logo 图片, jpg 或 png 均可
$QR = $qr_outfile_path; //已经生成的原始二维码图
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);
}
//输出图片
Header("Content-type: image/png");
imagepng($QR, $qr_outfile_path);
}生成的二维码图片如下:
不带LOGO的二维码:

带LOGO的二维码:

附:phpqrcode 类文件下载
评论列表 |
|
暂时没有相关记录
|
发表评论