PHP之生成二维码(含LOGO)

作者: GAOJUNJUN | 来源:发表于2017-09-23 15:30 被阅读125次

    首先下载phpqrcode类库包
    在文件内引用包内phpqrcode.php文件
    然后复制粘贴
    include "phpqrcode.php";
    // $value = 'www.baidu.com'; //二维码内容
    $errorCorrectionLevel = 'L';//容错级别
    $matrixPointSize = 6;//生成图片大小
    //生成二维码图片
    QRcode::png($value, 'qrcode.png', $errorCorrectionLevel, $matrixPointSize, 2);
    $logo = '11.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, 'code.png');
    ob_clean();//在输出钱擦掉(清除)缓存
    echo ' < img src="code.png" > ';

    //如果浏览器输出失败
    1.检查gd2是否开启
    2.输出前ob_clean(); 清空(擦掉)输出缓冲区,不加可能无法显示图像

    相关文章

      网友评论

        本文标题:PHP之生成二维码(含LOGO)

        本文链接:https://www.haomeiwen.com/subject/xqpcextx.html