前提:下載好 phpqrcode 類庫php
一、生成普通二維碼url
//引入類庫 include('phpqrcode/phpqrcode.php'); //二維碼裏面的連接地址 $url="http://www.baidu.com"; //二維碼圖片保存地址 $save_path = "./qrcode.png"; QRcode::png($url, $save_path, 'L', 4, 2); //後面兩個參數控制二維碼大小相關的,可自行調整
二、生成帶有logo的二維碼spa
//引入類庫 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
三、生成帶logo帶背景的二維碼code
//引入類庫 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 有背景的