首先下载一个phpqrcode的包放到/vendor目录下

链接:https://pan.baidu.com/s/18jV9DypYB_PHDhD6C0iedQ
提取码:qxuo

如果只是单纯生成二维码那么下面代码即可:

vendor('phpqrcode.phpqrcode');//引入
$url='你要生成的东西:文字、数字、链接等';
$errorCorrectionLevel = "Q"; // 容错级别:L、M、Q、H
$matrixPointSize = "3.8"; // 点的大小:1到10
$qr = new \QRcode();
ob_end_clean();
$qr->png($url,false,$errorCorrectionLevel, $matrixPointSize);//false代表不保存在本地

如果要生成带背景带文字的二维码:

1、首先需要文字的汉字包放在/public下

链接:https://pan.baidu.com/s/1g8wKEcW3F8edPN-HjZcWFA
提取码:8c2e

2、将你需要的背景图放在/public某一目录下我是放在/public/images下

然后就是代码操作:

     vendor('phpqrcode.phpqrcode');//引入包
$url='你需要生成的东西';
$errorCorrectionLevel = "Q"; // 容错级别:L、M、Q、H
$matrixPointSize = "3.8"; // 点的大小:1到10
$qr = new \QRcode();
ob_end_clean();
$path = '../public/qrcode/';//你保存初始二维码的路径
$QR = $path.$id.'.png';//初始二维码图片名
$qr->png($url,$QR,$errorCorrectionLevel, $matrixPointSize);//$QR是存放的路径 $bg = '../public/images/bg.jpg';//拿到背景图
$src_path = $QR;//拿到初始二维码
$dst = imagecreatefromstring(file_get_contents($bg));//获取
$src = imagecreatefromstring(file_get_contents($src_path));//获取 list($src_w, $src_h) = getimagesize($src_path);//获取宽高
$black = imagecolorallocate($dst, 255, 255, 255);//字体颜色(白色)
$font = realpath('../public/pingfang.ttf');//引入字体包 必须加realpath()否则会报错
$x = (375-$len*26)/2;//动态计算文字X坐标起始点
imagettftext($dst, 18, 0, $x, 510, $black, $font, $title);//循环添加文字
imagecopymerge($dst, $src, 100, 290, 0, 0, $src_w, $src_h, 100);//图片
header("Content-type: image/png");
imagepng($dst);//根据需要生成相应的图片并输出(如果需要保存本地就在后面加路径就好)
imagedestroy($dst);
imagedestroy($src);

TP框架中生成带背景带文字的二维码的更多相关文章

  1. phpqrcode生成带logo的二维码图片及带文字的二维码图片

    <?php require_once "./phpqrcode/phpqrcode.php"; /** * 这样就可以生成二维码了,实际上在png这个方法里还有几个参数需要使 ...

  2. php 合并图片 (将活动背景图片和动态二维码图片合成一张图片)

    <?php //案例一:将活动背景图片和动态二维码图片合成一张图片 //图片一 $path_1 = './background.png'; //图片二 $path_2 = './FU0851_2 ...

  3. 怎么制作生成苹果手机app应用的下载二维码图片

    原文网址:http://jingyan.baidu.com/article/8065f87ff654262331249886.html app store应用生成二维码操作步骤: 1.首先在MAC上的 ...

  4. 生成一张带有logo的二维码图片

    string url = 二维码内容; , , Encoding.UTF8); // 合成活动的LOGO图片 var hasImage = GlobalTools.GetCommonContent(& ...

  5. 【java】google的zxing架包生成二维码和读取二维码【可带文字和logo】

    承接RC4生成不重复字符串的需求之后,因为优惠码要方便用户使用的缘故,所以思来想去,觉得还是直接生成二维码给用户直接扫比较实用,也不用用户专门记录冗长的优惠码编号. ================= ...

  6. JAVA实现QRCode的二维码生成以及打印

    喜欢的朋友可以关注下,粉丝也缺. 不说废话了直接上代码 注意使用QRCode是需要zxing的核心jar包,这里给大家提供下载地址 https://download.csdn.net/download ...

  7. Python用MyQR生成自定义个性二维码

    MyQR是一个能够生成自定义二维码的python第三方库,根据需要能够生成普通二维码.带背景图片的艺术二维码.动态二维码. 1.MyQR安装 安装非常简单,直接用pip install MyQR,需要 ...

  8. php背景图片上生成二维码,二维码上带logo 代码示例 (原)

    依赖库文件 phpqrcode.php (下载地址://www.jb51.net/codes/189897.html :或者在官网下载:http://phpqrcode.sourceforge.net ...

  9. java生成二维码(带logo)

    之前写过一篇不带logo的二维码实现方式,採用QRCode和ZXing两种方式 http://blog.csdn.net/xiaokui_wingfly/article/details/3947618 ...

随机推荐

  1. 关于JAVA中源码级注解的编写及使用

    一.注解简介: 1.1.什么是"注解": ​ 在我们编写代码时,一定看到过这样的代码: class Student { private String name; @Override ...

  2. LeetCode 684. Redundant Connection 冗余连接(C++/Java)

    题目: In this problem, a tree is an undirected graph that is connected and has no cycles. The given in ...

  3. Linux相关知识笔记

    Quagga要在linux下编译并配置运行,所有,学习一点linux的基础知识. 安装的Ubuntu,用户名linux,密码1 使能Ubuntu的IP转发功能,需要修改etc/sysctl.conf和 ...

  4. U盘制作macOS Sierra的启动盘

    1.macOS Sierra的几种安装方式 *开机时按住command+option+r 进行联网在线安装.PS:在网速好的情况还行,但是如果网络差的时候,它会让你崩溃的. *使用光盘进行安装. *今 ...

  5. git中常混淆的操作

    1, git fetch 和 git pull 参考链接: https://stackoverflow.com/questions/292357/what-is-the-difference-betw ...

  6. .NET CORE(C#) WPF简单菜单MVVM绑定

    微信公众号:Dotnet9,网站:Dotnet9,问题或建议:请网站留言, 如果对您有所帮助:欢迎赞赏. .NET CORE(C#) WPF简单菜单MVVM绑定 阅读导航 本文背景 代码实现 本文参考 ...

  7. K8s~为pod添加sidecar进行日志收集

    我们在k8s部署服务时,一般来说一个服务会对应一类pod,而pod通过rs实现副本集,而这些pod的日志一般有控制台stdout和文件的,一般会把这些日志最终输出到elasticsearch里,再通过 ...

  8. mysql添加索引(建表之后)

    一.使用ALTER TABLE语句创建索引 语法如下: alter table table_name add index index_name (column_list) ; alter table ...

  9. python学习---文件修改

    1.读一行,写一行,判断字符串,修改之. f=open("yesterday2","r",encoding="utf-8") f_new=o ...

  10. JaveScript遍历数组的方法

    JaveScript遍历数组的方法 第一种:for循环 遍历出数组的每个值 let arr = [1, 2, 3, 4, 5, 6, 7, 8]; for (let i = 0; i < arr ...