zoukankan      html  css  js  c++  java
  • 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二维码的地址

      

  • 相关阅读:
    数据结构64:冒泡排序算法(起泡排序)
    数据结构63:希尔排序算法(缩小增量排序)
    Python3 内置函数
    Python3 解压序列
    Python3 装饰器
    Python3 函数
    Python3 迭代器和生成器
    Python3 函数式编程自带函数
    Python3 函数式编程
    Python3 匿名函数
  • 原文地址:https://www.cnblogs.com/LXYX/p/7427293.html
Copyright © 2011-2022 走看看