首页 > 作文

利用phpqrcode二维码生成类库合成带logo的二维码并且用合成的二维码生成海报(二)

更新时间:2023-04-07 18:32:44 阅读: 评论:0

前期准备

引入phpqrcode类库(下载地址:;支持彩色二维码的下载地址:)php开启g杨文彬d扩展库支持

1、利用phpqrcode生成二维码:

原理分析:

下载下来的类文件是一个压缩包,包含很多文件和演示程序,我们只需要里边的phpqrcode.php

这一个文件就可以生成二维码了,它是一个多个类的集合文件,我们需要用到里边的qrcode类png()方法:

//测试生成带头像的网站二维码海报    public function ce_hpovertyaibao_qrcode(){        $codeurl = "http://wap.kelaikequ.com";        vendor('phpqrcode.class#phpqrcode');        $logoqr = "http://thirdwx.qlogo.cn/mmopen/vi_32/icayhiapvcmsygnhouhesvyiaz8yxtvfbicgx5x8jogh4uniaibp8skqf8uv4cntibsjdndboqwi9lsvdqp6slfqaly4g/132";        $level=3;        $size=6;        $errorcorrectionlevel =intval($level) ;//容错级别        $matrixpointsize = intval($size);//生成图片大小        $dirpath ='./uploads/qrcode/'.date('y-m-d').'/';//保存二维码路径        $dirpath_b ='/uploads/qrcode/'.date('y-m-d').'/';//保存二维码路径        if(!file_exists($dirpath)){            mkdir($dirpath, 0777);        }        $tmpname = time().".png"; //保存在服务器上的二维码名称        $qrcodename = $dirpath .$tmpname; //保存在服务器上的二维码路径        $qrcodename_b = $dirpath_b .$tmpname; //保存在服务器上的二维码路径        //生成二维码图片        $object = new \qrcode();        $object->png($codeurl, $qrcodename, $errorcorrectionlevel, $matrixpointsize, 2);        //$qr = imagecreatefrompng($qrcodename);        $qr = $qrcodename;        $qrlogopath = './uploads/qrcode/qrlogo/'.date('y-m-d').'/';        $qrlogopath_b = '/uploads/qrcode/qrlogo/'.date跳级('y-m-d').'/';        if(!file_exists($qrlogopath)){            mkdir($qrlogopath, 0777);        }        $qrcode = time().'.png';        $qrlogo = $qrlogopath .$qrcode;        $qrlogo_b = $qrlogopath_b .$qrcode;        if($logoqr !==fal){            $qr = imagecreatefromstring(file_get_contents($qr));            $logo = imagecreatefromstring(file_get_contents($logoqr));            $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,lol视频解说 $from_width, $from_width, 0, 0, $logo_qr_width,                $logo_qr_height, $logo_width, $logo_height);            header('content-type: image/png');
       //合成带logo的二维码 imagepng($qr,$qrlogo); $dst_path = './uploads/haibao/haibao.png';//海报素材底图 $src_path = $qrlogo; //覆盖图,用上面的那张图qrlogo $haibaopath = './uploads/qrcode/haibao/'.date('y-m-d').'/'; //$haibaopath_b = '/uploads/qrcode/haibao/'.date('y-m-d').'/'; if(!file_exists($haibaopath)){ mkdir($haibaopath, 0777); } $haibao = time().'.png'; $haibao = $haibaopath .$haibao; //$haibao_b = $haibaopath_b .$haibao; //创建图片实例 $dst = imagecreatefromstring(file_get_contents($dst_path));//海报 $src = imagecreatefromstring(file_get_contents($src_path));//二维码 //获取覆盖图的宽高 list($src_w, $src_h) = getimagesiz安培力左手定则e($src_path); //获取海报的宽高 list($dst_w, $dst_h) = getimagesize($dst_path); // imagecopymerge($dst, $src, 20, 120, 0, 0, $src_w, $src_h, 100); imagecopymerge($dst, $src, ($dst_w-$src_w)/2, $dst_h-100-$src_h, 0, 0, $src_w, $src_h, 100); list($dst_w, $dst_h) = getimagesize($dst_path); imagepng($dst,$haibao);//生成图片并保存到服务器上 合成的海报 imagedestroy($dst); imagedestroy($src); $haibao = substr($haibao,1);//去掉左边第一个小点 $arr['msg'] = $haibao; echo json_encode($arr);exit; } }

本文发布于:2023-04-07 18:32:42,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/4b08e60d47f0b6504af1c8afc585bbc5.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:利用phpqrcode二维码生成类库合成带logo的二维码并且用合成的二维码生成海报(二).doc

本文 PDF 下载地址:利用phpqrcode二维码生成类库合成带logo的二维码并且用合成的二维码生成海报(二).pdf

标签:二维码   图片   海报   路径
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图