phpqrcode生成带logo的二维码图片

<?php
//include_once('lib/QrReader.php');
//$qrcode = new QrReader('201708211144474410.jpg');  //图片路径
//$text = $qrcode->text(); //返回识别后的文本
//print_r($text);
include "./phpqrcode.php";

//$url  = "http://open.weixin.qq.com/qr/code/?username=twabc2000";

        $url = "http://weixin.qq.com/r/xzpHXw-ERFI7rUs892-V";
        //QRcode::png($url, false, QR_ECLEVEL_L,  8,  1 , false ,"#ff0000");      
        QRcode::png($url, "ewm.png", QR_ECLEVEL_L,  8,  1 , false ,"#ff0000");      
        $logo = 'logo.jpg';//准备好的logo图片 
$QR = 'ewm.png';//已经生成的原始二维码图 
 
if ($logo !== FALSE) { 
 $QR = imagecreatefromstring(file_get_contents($QR)); 
 $logo = imagecreatefromstring(file_get_contents($logo)); 
 //if (imageistruecolor($logo)) imagetruecolortopalette($logo, false, 65535); 
 $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);
imagepng($QR, 'ewm.png');
imagedestroy($QR);

phpqrcode代码: https://files.cnblogs.com/files/Dong-Ge/phpqrcode.zip(已解决logo图片失真问题)

原文地址:https://www.cnblogs.com/Dong-Ge/p/7417024.html