zoukankan      html  css  js  c++  java
  • php结合phpqrcode生成带图片LOGO的二维码

    PHP生成带LOGO的二维码,或许很多高手都已经实现了,但之前并没有过多关注这方面,这段有个小项目要用到二维码生成,索性就查了些资料,发现有一个PHP 类库phpqrcode对生成这种二维码很方便,索性就测试了一下,下面把自己的用法和代码与菜鸟分享,希望高手鼓励哦。


    生成的二维码效果图

    首先你需要下载这个类库包,或者我后边会附上这个类库,具体的使用代码:

    1、生成基本的二维码单元,不带Logo的:

    <?php    
    //文件输出    
        include('phpqrcode.php');    
    // 二维码数据    
        $data = 'http://www.codesc.net';    
    // 生成的文件名    
       $filename = 'ewm.png';   
    // 纠错级别:L、M、Q、H    
        $errorCorrectionLevel = 'L';    
    // 点的大小:1到10    
        $matrixPointSize = 4;    
        QRcode::png($data, $filename, $errorCorrectionLevel, $matrixPointSize, 2);    
    ?> 
    

     2、生成标准的和带Logo的二维码单元 :

    <?php
    include ('phpqrcode.php');
    $value = 'http://www.codesc.net';//二维码数据
    $errorCorrectionLevel = 'L';//纠错级别:L、M、Q、H
    $matrixPointSize = 10;//二维码点的大小:1到10
    QRcode::png ( $value, 'ewm.png', $errorCorrectionLevel, $matrixPointSize, 2 );//不带Logo二维码的文件名
    echo "二维码已生成" . "<br />";
    $logo = 'emwlogo.gif';//需要显示在二维码中的Logo图像
    $QR = 'ewm.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_width, 0, 0, $logo_qr_width, $logo_qr_height, $logo_width, $logo_height );
    }
    imagepng ( $QR, 'ewmlogo.png' );//带Logo二维码的文件名
    ?>
    

      phpqrcode.php类库可以在这里下载:

    http://sourceforge.net/projects/phpqrcode/

    http://www.codesc.net/source/3782.shtml

  • 相关阅读:
    Ansible 简单使用
    修改Elasticsearch的settings
    Nginx ssl证书部署
    配置 Haproxy 防范 DDOS 攻击
    Sort命令使用
    Haproxy ssl 配置方式
    MySQL连接线程kill利器之pt-kill
    percona-toolkit工具包的安装和使用
    Centos7 禁止firewalld并使用iptables 作默认防火墙以及忘记root密码的处理方法
    pt-query-digest查询日志分析工具
  • 原文地址:https://www.cnblogs.com/jianghuluanke/p/4610810.html
Copyright © 2011-2022 走看看