phpqrcode 分别生成普通、带logo、带背景带logo二维码

前提:下载好 phpqrcode 类库

1、生成普通二维码

//引入类库include(‘phpqrcode/phpqrcode.php‘);//二维码里面的链接地址$url="http://www.baidu.com";//二维码图片保存地址$save_path = "./qrcode.png";QRcode::png($url, $save_path, ‘L‘, 4, 2);//后面两个参数控制二维码大小相关的,可自行调整

 

2、生成带有logo的二维码

//引入类库include(‘phpqrcode/phpqrcode.php‘);//二维码里面的链接地址$url="http://www.baidu.com";//二维码图片保存地址$save_path = "./qrcode.png";QRcode::png($url, $save_path, ‘L‘, 4, 2);//后面两个参数控制二维码大小相关的,可自行调整//logo图片$logo = ‘logo.png‘;if($logo){ $QR = imagecreatefromstring(file_get_contents( $save_path )); $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, $save_path ); }//首先生成普通二维码,然后添加上logo

3、生成带logo带背景的二维码

//引入类库include(‘phpqrcode/phpqrcode.php‘);//二维码里面的链接地址$url="http://www.baidu.com";//二维码图片保存地址$save_path = "./qrcode.png";QRcode::png($url, $save_path, ‘L‘, 4, 2);//后面两个参数控制二维码大小相关的,可自行调整//添加logo$logo = ‘logo.png‘;if($logo){ $QR = imagecreatefromstring(file_get_contents( $save_path )); $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, $save_path ); }//添加背景图$bgImg = ‘xuanchuan.jpg‘;$backgroupImg = imagecreatefromstring(file_get_contents($bgImg));$newQR = imagecreatefromstring(file_get_contents($save_path));//获取新的尺寸list($width, $height) = getimagesize($save_path);$new_width = 200;$new_height = 200;//重新组合图片并调整大小imagecopyresampled($backgroupImg,$newQR,260, 700, 0, 0,$new_width, $new_height, $width, $height);//输出图片imagepng($backgroupImg, $save_path);//现在生成的图片就是有logo 有背景的

 

相关文章