php生成带logo的二维码

<?php

// 我的博客地址啦
$data = 'http://blog.csdn.net/molaifeng';

// 宽高 200*200 的正方形
$size = '200x200';

// 中间那logo图
$logo = 'logo.jpg';

// 通过google api生成未加logo前的QR图,也可以自己使用RQcode类生成
$png = 'http://chart.googleapis.com/chart?chs=' . $size . '&cht=qr&chl=' . urlencode($data) . '&chld=L|1&choe=UTF-8';

$QR = imagecreatefrompng($png);

if ($logo !== FALSE) {

    // 从字符串中的图像流新建一图像
    $logo = imagecreatefromstring(file_get_contents($logo));

    // 二维码宽度
    $QR_width = imagesx($QR);

    // 二维码高度
    $QR_height = imagesy($QR);

    // logo宽度
    $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);

imagedestroy($QR);


生成二维码为


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值