php利用Qrcode生成带logo二维码

本文介绍如何使用PHPQRCODE库在ThinkPHP框架中生成带有Logo的二维码,并提供了详细的步骤说明及代码示例。

1 , 下载phpqrcode类库

2, 引入qrcode库

  我用的是TP框架,直接将下载好的qrcode库放入TP框架的核心框架下的Vendor文件下,vendor('phpqrcode.phpqrcode');  //引入

3,代码实例

vendor("phpqrcode.phpqrcode");  //引入phpqrcode库
$value = 'http://www.baidu.com';   //二维码内容

容错级别:
  L(QR_ECLEVEL_L,7%),M(QR_ECLEVEL_M,15%),Q(QR_ECLEVEL_Q,25%),H(QR_ECLEVEL_H,30%);

$errorCorrectionLevel = 'L'; //容错级别

$matrixPointSize = 6;//生成图片大小

$img_name_url = 'qrcode.png';

\QRcode::png($value, $img_name_url , $errorCorrectionLevel, $matrixPointSize, 2);    //生成二维码图片,现在已经生成了不带logo的二维码图片img_name_url是生成的二维码保存的地址

$logo = 'logocode.png';//准备好的logo图片

$QR = 'qrcode.png';//已经生成的原始二维码图,就是上面生成的二维码图,也可以是你自己的二维码图片,这个不固定

if ($logo !== FALSE) {
$QR = imagecreatefromstring(file_get_contents($QR));   //得到二维码图片  return  true | false
$logo = imagecreatefromstring(file_get_contents($logo));   //得到logo图片   return  true | false
$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");
$imgs = './Qrcode/qrcodes.png';    //填写二维码图片地址
ImagePng($QR , $imgs);         //保存生成的带logo的二维码

echo $imgs;              //这就是带logo二维码的地址

  

 

转载于:https://www.cnblogs.com/LXYX/p/7427293.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值