TP框架中生成带背景带文字的二维码
首先下载一个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框架中生成带背景带文字的二维码的更多相关文章
- phpqrcode生成带logo的二维码图片及带文字的二维码图片
<?php require_once "./phpqrcode/phpqrcode.php"; /** * 这样就可以生成二维码了,实际上在png这个方法里还有几个参数需要使 ...
- php 合并图片 (将活动背景图片和动态二维码图片合成一张图片)
<?php //案例一:将活动背景图片和动态二维码图片合成一张图片 //图片一 $path_1 = './background.png'; //图片二 $path_2 = './FU0851_2 ...
- 怎么制作生成苹果手机app应用的下载二维码图片
原文网址:http://jingyan.baidu.com/article/8065f87ff654262331249886.html app store应用生成二维码操作步骤: 1.首先在MAC上的 ...
- 生成一张带有logo的二维码图片
string url = 二维码内容; , , Encoding.UTF8); // 合成活动的LOGO图片 var hasImage = GlobalTools.GetCommonContent(& ...
- 【java】google的zxing架包生成二维码和读取二维码【可带文字和logo】
承接RC4生成不重复字符串的需求之后,因为优惠码要方便用户使用的缘故,所以思来想去,觉得还是直接生成二维码给用户直接扫比较实用,也不用用户专门记录冗长的优惠码编号. ================= ...
- JAVA实现QRCode的二维码生成以及打印
喜欢的朋友可以关注下,粉丝也缺. 不说废话了直接上代码 注意使用QRCode是需要zxing的核心jar包,这里给大家提供下载地址 https://download.csdn.net/download ...
- Python用MyQR生成自定义个性二维码
MyQR是一个能够生成自定义二维码的python第三方库,根据需要能够生成普通二维码.带背景图片的艺术二维码.动态二维码. 1.MyQR安装 安装非常简单,直接用pip install MyQR,需要 ...
- php背景图片上生成二维码,二维码上带logo 代码示例 (原)
依赖库文件 phpqrcode.php (下载地址://www.jb51.net/codes/189897.html :或者在官网下载:http://phpqrcode.sourceforge.net ...
- java生成二维码(带logo)
之前写过一篇不带logo的二维码实现方式,採用QRCode和ZXing两种方式 http://blog.csdn.net/xiaokui_wingfly/article/details/3947618 ...
随机推荐
- OpenCV3入门(八)图像边缘检测
1.边缘检测基础 图像的边缘是图像的基本特征,边缘点是灰度阶跃变化的像素点,即灰度值的导数较大或极大的地方,边缘检测是图像识别的第一步.用图像的一阶微分和二阶微分来增强图像的灰度跳变,而边缘也就是灰度 ...
- Go语言实现:【剑指offer】变态跳台阶
该题目来源于牛客网<剑指offer>专题. 一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 找规律: 1阶:1种: 2阶:2 ...
- 【基础】CodeBlocks调试器基本使用方法
CodeBlocks是一个开放源码的全功能的跨平台C/C++集成开发环境. 下载地址:http://www.codeblocks.org/downloads/26 其中,Windows环境下可以使用 ...
- 在C#中通过使用Newtonsoft.Json库来解析百度地图地理编码(GeoCoder)服务接口返回的Json格式的数据
百度地图地理编码(GeoCoder)服务接口返回的Json格式的数据,如下所示: http://api.map.baidu.com/geocoding/v3/?address=**省**市**区**路 ...
- 数据算法 --hadoop/spark数据处理技巧 --(3.左外连接 4.反转排序)
三. 左外连接 考虑一家公司,比如亚马逊,它拥有超过2亿的用户,每天要完成数亿次交易.假设我们有两类数据,用户和交易: users(user_id,location_id) transactions( ...
- .NET面试题整理(持续更新)
1.已知值类型保存在线程栈中,引用类型保存在堆中 struct Point{ public int x,y; } public sealed class program{ public static ...
- Linux安装Redis,在测试阶段即make test出现“You need tcl 8.5 or newer in order to run the Redis test”问题解决方案
Linux安装Redis,在测试阶段即make test出现"You need tcl 8.5 or newer in order to run the Redis test"问题 ...
- Java笔记---枚举类和注解
Java笔记---枚举类和注解 一.枚举类 自定义枚举类 方式一:JDK5.0之前自定义枚举类 class Seasons { //1. 声明Seasons对象的属性 private final St ...
- codewars--js--Reverse or rotate?----es6变量,箭头函数,正则取块
问题描述: 对输入的str按照sz个数进行分块,若一块内所有数字的立方和是偶数,则倒序:否则,向左移动一位.然后将修改过的块整合到一个字符串,作为输出. The input is a string s ...
- 下拉菜单的jquery组件封装
首先晒出封装好的dropdown.js (function($){ 'use strict';//使用严格模式 //构造函数形式 function Dropdown(elem,options){ // ...