zoukankan      html  css  js  c++  java
  • phpqrcode生成带logo的二维码图片及带文字的二维码图片

     1 <?php
     2 require_once "./phpqrcode/phpqrcode.php";
     3 
     4 /**
     5  * 这样就可以生成二维码了,实际上在png这个方法里还有几个参数需要使用。
     6   第一个参数$text,就是上面代码里的URL网址参数,
     7   第二个参数$outfile默认为否,不生成文件,只将二维码图片返回,否则需要给出存放生成二维码图片的路径
     8   第三个参数$level默认为L,这个参数可传递的值分别是L(QR_ECLEVEL_L,7%),M(QR_ECLEVEL_M,15%),Q(QR_ECLEVEL_Q,25%),H(QR_ECLEVEL_H,30%)。这个参数控制二维码容错率,不同的参数表示二维码可被覆盖的区域百分比。
     9   利用二维维码的容错率,我们可以将头像放置在生成的二维码图片任何区域。
    10   第四个参数$size,控制生成图片的大小,默认为4
    11   第五个参数$margin,控制生成二维码的空白区域大小
    12   第六个参数$saveandprint,保存二维码图片并显示出来,$outfile必须传递图片路径。
    13  */
    14 QRcode::png("你好", "a.jpg", 'L', 6, 3,true);
    15 
    16 
    17 $QR='a.jpg';
    18 
    19 $logo='back.png';
    20 /**
    21  * 像图片中添加文字
    22  * @param $txt 文本文字
    23  * @param $image 图片路径
    24  * @param $size  文字大小
    25  * @param $scale 文字旋转度
    26  * @param $x 在x轴上的位置
    27  * @param $y 在y轴上的位置
    28  */
    29 function numimage($txt,$image,$size,$scale,$x,$y)
    30 {
    31     $im = imagecreatefrompng($image);
    32     $textcolor = imagecolorallocate($im, 0, 0, 0);
    33     $font = "simhei.ttf";
    34     $to =$txt;
    35     imagettftext($im, $size,$scale,$x,$y, $textcolor, $font, $to);
    36     imagejpeg($im, $image);
    37     imagedestroy($im);
    38 }
    39 
    40 //生成带文字的二维码
    41 numimage('123456',$QR,5,0,35,105);
    42 
    43 
    44 
    45 
    46 function qrcodeLogo($logo,$QR)
    47 {
    48     if ($logo !== FALSE) {
    49         $QR = imagecreatefromstring(file_get_contents($QR));
    50         $logo = imagecreatefromstring(file_get_contents($logo));
    51         $QR_width = imagesx($QR);//二维码图片宽度
    52         $QR_height = imagesy($QR);//二维码图片高度
    53         $logo_width = imagesx($logo);//logo图片宽度
    54         $logo_height = imagesy($logo);//logo图片高度
    55         $logo_qr_width = $QR_width / 5;
    56         $scale = $logo_width / $logo_qr_width;
    57         $logo_qr_height = $logo_height / $scale;
    58         $from_width = ($QR_width - $logo_qr_width) / 2;
    59         //重新组合图片并调整大小
    60         imagecopyresampled($QR, $logo, $from_width, $from_width, 0, 0, $logo_qr_width,
    61             $logo_qr_height, $logo_width, $logo_height);
    62     }
    63 //输出图片
    64     imagepng($QR, 'helloweixin.png');
    65 }
    66 
    67 //生成带logo的二维码
    68 qrcodeLogo($logo,$QR);
  • 相关阅读:
    python接口自动化之发送post(四)
    python接口自动化之发送get(三)
    python接口自动化之fiddler使用(二)
    python读取yaml配置文件
    python接口自动化测试之http协议(一)
    python接口自动化测试之根据excel中的期望结果是否存在于请求返回的响应值中来判断用例是否执行成功
    python3读取、写入、追加写入excel文件
    python UI自动化之处理多窗口
    python UI自动化之js操作
    python UI自动化之切换iframe
  • 原文地址:https://www.cnblogs.com/wujindong/p/6530321.html
Copyright © 2011-2022 走看看