您现在的位置是:网站首页 > 心得笔记
endroid/qrcode PHP生成带LOGO二维码
简介在开发中经常需要用户扫码从而进到一个宣传页面,一般情况下,我们直接使用最简单的不带LOGO的二维码也一样可以实现,但是有时候,有的用户可能想要把自己的头像等放到二维码中,这就需要我们生成带LOGO的二维码,这里给出一个demo
1、composer安装endroid/qrcode
composer require endroid/qr-code
2、基本用法
use Endroid\QrCode\QrCode; ... public function test () { $rqCode = new QrCode('http://blog.blonglee.me');//这里的参数是你需要扫码看到的页面url header('Content-Type:'.$qrCode->getContentType()); echo $qrCode->writeString(); exit;//不加exit;二维码图片就会直接以字符串的形式输出 加exit则正确输出二维码 } ...
运行效果图:
3、高级用法(LOGO)
use Endroid\QrCode\QrCode; use Endroid\QrCode\ErrorCorrectionLevel; ... public function test () { $set_log =true;//是否带有LOGO $qrCode = new QrCode('http://blog.blonglee.me'); if($set_log ==true){ $qrCode->setLogoPath($_SERVER['DOCUMENT_ROOT'] .'/front/images/t04.jpg');//LOGO地址要使用绝对地址 $qrCode->setLogoWidth(150,200);//两个参数 LOGO高和宽 } $qrCode->setErrorCorrectionLevel(new ErrorCorrectionLevel(ErrorCorrectionLevel::HIGH)); header('Content-Type: '.$qrCode->getContentType());// Directly output the QR code //二维码图片输出形式1 直接输出 echo $qrCode->writeString(); //二维码图片输出形式2 保存到指定目录不输出 $path =$_SERVER['DOCUMENT_ROOT'] .'/front/images/1.jpg';//这里保存图片后缀使用jpg、png自愿 $qrCode->writeFile($path);// Save it to a file } ...
运行效果图:
其他方法讲解:
//$qrCode->setMargin(100);
运行效果:
$qrCode->setEncoding('UTF-8');//设置编码 $qrCode->setForegroundColor(['r' => 0, 'g' => 0, 'b' => 0, 'a' => 0]);//前背景色 $qrCode->setBackgroundColor(['r' => 255, 'g' => 255, 'b' => 255, 'a' => 0]);//后背景色
上一篇:s使用idrag完成模块拖动