温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Laravel如何使用PHPQRCODE实现生成带有LOGO的二维码图片

发布时间:2021-06-24 11:45:05 阅读:152 作者:小新 栏目:开发技术
PHP开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

这篇文章主要介绍了Laravel如何使用PHPQRCODE实现生成带有LOGO的二维码图片,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

具体如下:

/**
* 利用phpqrcode来实现生成带有logo的二维码图片
*/
public function getQrCode(Request $request){
    $type  =  $request->input('type');//传递的类型 ios | android
    require_once(dirname(__FILE__) . '/phpqrcode/' . 'phpqrcode.php');
    $errorCorrectionLevel 'H'// 错误校正
    $matrixPointSize 5// 边界空白位置
    $QRcode =  new \QRcode;
    if($type){
      if($type == 'ios'){
        $value =  'http://www.ios.com'// 二维码存放的内容
        $QRcode->png($value'ios.png'$errorCorrectionLevel$matrixPointSize2); //生成二维码
        //echo "二维码已生成";
        $logo 'logo.png';//logo的图片地址
        //echo " <img src='../../../public/logo.png'>";
        $QR 'ios.png'//二维码图片地址
        //echo " <img src='../../../ios.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_height imagesy($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_width00$logo_qr_width$logo_qr_height$logo_width$logo_height);
        }
        imagepng($QR,'ios.png'); //跟logo合并之后的地址
        $a   =  'http://www.ios.com/ios.png';
        $status =  0;
        $msg  =  $a;
      }elseif($type == 'android'){
          $value =  'http://www.android.com'// 二维码存放的内容
          //var_dump($value);
          $QRcode->png($value'android.png'$errorCorrectionLevel$matrixPointSize2); //生成二维码
          //echo "二维码已生成";
          $logo 'logo.png';//logo的图片地址
          //echo " <img src='../../../public/logo.png'>";
          $QR 'android.png'//二维码图片地址
          //echo " <img src='../../../android.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_height imagesy($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_width00$logo_qr_width$logo_qr_height$logo_width$logo_height);
          }
          imagepng($QR,'android.png'); //跟logo合并之后的地址
          $a   =  'https://cache.yisu.com/upload/information/20201209/266/38671.png';
          $status =  0;
          $msg  =  $a;
      }else{
        $status =  1;
        $msg  =  '没有该类型!';
      }
      //QRcode::png($value, 'sunny.png', $errorCorrectionLevel, $matrixPointSize, 2); //生成二维码
    }else{
      $status =  2;
      $msg  =  '参数传递不完整!';
    }
    return response()->json(['status' => $status,'msg' => $msg])->header('Access-Control-Allow-Origin''*');
}

感谢你能够认真阅读完这篇文章,希望小编分享的“Laravel如何使用PHPQRCODE实现生成带有LOGO的二维码图片”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×