• php利用Qrcode生成带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二维码的地址

      

  • 相关阅读:
    测试开发趋势 + PyUnit测试框架 + Robot Framework
    python 面经
    持经达变,不固而中
    数据库、网络、Linux面经
    兴趣培养方向
    133天
    Python学习第132天(Django2内容增加)
    Python学习第131天(Django之ORM一对多操作练习)
    Python学习第130天(Django中ORM一对多的增删改查)
    Python学习第129天(ORM单表查询、模糊查询)
  • 原文地址:https://www.cnblogs.com/LXYX/p/7427293.html
Copyright © 2020-2023  润新知