Home > Article > Backend Development > How to implement phpqrcode to generate QR code with logo in Thinkphp3.2.3
This article mainly introduces in detail the implementation method of Thinkphp3.2.3 integrating phpqrcode to generate QR code with logo. Interested friends can refer to it.
This article mainly introduces in detail the implementation method for everyone. Introduced the implementation method of Thinkphp3.2.3 integrating phpqrcode to generate QR code with logo. Interested friends can refer to
There is no QR code related library in Thinkphp, so we can integrate phpqrcode. Complete the function of generating QR code.
Download phpqrcode
Integrate into Thinkphp framework
Create a new directory phpqrcode under "ThinkPHP\Library\Vendor\", Extract the contents of the compressed package to this folder.
Call phpqrcode to generate QR code
Add the following method under the IndexController controller:
public function qrcode($url="www.baidu.com",$level=3,$size=4) { Vendor('phpqrcode.phpqrcode'); $errorCorrectionLevel =intval($level) ;//容错级别 $matrixPointSize = intval($size);//生成图片大小 //生成二维码图片 $object = new \QRcode(); $object->png($url, false, $errorCorrectionLevel, $matrixPointSize, 2); }
Visit: http://127.0.0.1/Index/qrcode to see the generated QR code.
Generate a QR code with logo
First call phpqrcode to generate a QR code, and then use php's image related function to add the logo image to the generated QR code on the picture.
include 'phpqrcode.php'; $value = 'http://www.cnblogs.com/txw1958/'; //二维码内容 $errorCorrectionLevel = 'L';//容错级别 $matrixPointSize = 6;//生成图片大小 //生成二维码图片 QRcode::png($value, 'qrcode.png', $errorCorrectionLevel, $matrixPointSize, 2); $logo = 'logo.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, 'helloweixin.png'); echo '<img src="helloweixin.png">';
The above is the entire content of this article. I hope it will be helpful to everyone’s study. For more related content, please pay attention to the PHP Chinese website!
Related recommendations:
Implementing phpexcel export with generated pictures in thinkphp3.2
thinkphp3 .2.3 version database addition, deletion, modification and query implementation code
The above is the detailed content of How to implement phpqrcode to generate QR code with logo in Thinkphp3.2.3. For more information, please follow other related articles on the PHP Chinese website!