phpqrcode 分别生成普通、带logo、带背景带logo二维码
前提:下载好 phpqrcode 类库
1、生成普通二维码
//引入类库
include('phpqrcode/phpqrcode.php');
//二维码里面的链接地址
$url="http://www.baidu.com";
//二维码图片保存地址
$save_path = "./qrcode.png";
QRcode::png($url, $save_path, 'L', 4, 2);
//后面两个参数控制二维码大小相关的,可自行调整
2、生成带有logo的二维码
//引入类库
include('phpqrcode/phpqrcode.php');
//二维码里面的链接地址
$url="http://www.baidu.com";
//二维码图片保存地址
$save_path = "./qrcode.png";
QRcode::png($url, $save_path, 'L', 4, 2);
//后面两个参数控制二维码大小相关的,可自行调整 //logo图片
$logo = 'logo.png';
if($logo){
$QR = imagecreatefromstring(file_get_contents( $save_path ));
$logo = imagecreatefromstring(file_get_contents($logo));
$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, $from_width, $from_width, 0, 0, $logo_qr_width,$logo_qr_height, $logo_width, $logo_height);//输出图片
imagepng($QR, $save_path );
}
//首先生成普通二维码,然后添加上logo
3、生成带logo带背景的二维码
//引入类库
include('phpqrcode/phpqrcode.php');
//二维码里面的链接地址
$url="http://www.baidu.com";
//二维码图片保存地址
$save_path = "./qrcode.png";
QRcode::png($url, $save_path, 'L', 4, 2);
//后面两个参数控制二维码大小相关的,可自行调整 //添加logo
$logo = 'logo.png';
if($logo){
$QR = imagecreatefromstring(file_get_contents( $save_path ));
$logo = imagecreatefromstring(file_get_contents($logo));
$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, $from_width, $from_width, 0, 0, $logo_qr_width,$logo_qr_height, $logo_width, $logo_height);//输出图片
imagepng($QR, $save_path );
} //添加背景图
$bgImg = 'xuanchuan.jpg';
$backgroupImg = imagecreatefromstring(file_get_contents($bgImg));
$newQR = imagecreatefromstring(file_get_contents($save_path));
//获取新的尺寸
list($width, $height) = getimagesize($save_path);
$new_width = 200;
$new_height = 200;
//重新组合图片并调整大小
imagecopyresampled($backgroupImg,$newQR,260, 700, 0, 0,$new_width, $new_height, $width, $height);//输出图片
imagepng($backgroupImg, $save_path);
//现在生成的图片就是有logo 有背景的
phpqrcode 分别生成普通、带logo、带背景带logo二维码的更多相关文章
- C# 利用BarcodeLib.dll生成条形码(一维,zxing,QrCodeNet/dll二维码)
原文:http://blog.csdn.net/kongwei521/article/details/17588825 首先效果: 一.下载BarcodeLib.dll 下载地址 :http://do ...
- 二维码(支持arc,苹果自带扫描,zbar扫描,二维码生成)
下载地址:http://pan.baidu.com/s/1mgvJzyo
- java生成二维码(带logo)
之前写过一篇不带logo的二维码实现方式,採用QRCode和ZXing两种方式 http://blog.csdn.net/xiaokui_wingfly/article/details/3947618 ...
- 带logo图片或不带logo图片的二维码生成与解析,亲测成功
最近公司需要实现二维码功能,本人经过一顿百度,终于实现了,因有3个功能:不带logo图片.带logo图片.解析二维码,篇幅较长,请耐心读之,直接复制粘贴即可. 前提:myeclipse10:jar包: ...
- ZXing生成条形码、二维码、带logo二维码
采用的是开源的ZXing,Maven配置如下,jar包下载地址,自己选择版本下载,顺便推荐下Maven Repository <!-- https://mvnrepository.com/art ...
- 生成二维码、条形码、带logo的二维码
Nuget安装ZXing.Net,帮助类: using System; using System.Collections.Generic; using System.Drawing; using Sy ...
- php生成带自定义logo和带二维码跳转自定义地址的二维码
index.php<?phpheader('Content-type:text/html;charset=UTF-8');// 指定允许其他域名访问header('Access-Control- ...
- 二维码生成库phpqrcode使用小结
<img src="data:image/png;base64,这里是base64编码内容" /> 只需要里边的phpqrcode.php这一个文件就可以生成二维码了 ...
- ThinkPHP5生成二维码图片与另一张背景图片进行合成
1.PHP方法 public function do_qrcode(){ Vendor('Qrcode.phpqrcode'); Vendor('Qrcode.Compress'); $object ...
- C# 生成二维码,彩色二维码,带有Logo的二维码及普通条形码
每次写博客,第一句话都是这样的:程序员很苦逼,除了会写程序,还得会写博客!当然,希望将来的一天,某位老板看到此博客,给你的程序员职工加点薪资吧!因为程序员的世界除了苦逼就是沉默.我眼中的程序员大多都不 ...
随机推荐
- bitnami redmine svn配置
采用bitnami 方案安装redmine svn服务器端会自己进行安装 1.创建版本库 首先进入remine安装目录的subversion/bin目录,例如我的安装目录是“/opt/redmine/ ...
- part1:3-VMware及redhat enterprise Linux 6 的安装
创建虚拟机PC FILE->NEW Virtual machine->custom(自定义,定制)->...->I WILL INSTALL THE OS LATER-> ...
- 关于IBatisNet的配置文件中数据库连接字符串加密处理
我们通常在IBatisNet配置文件 properties.config 加入数据库连接字符串.数据库连接字符串直接放在里面,没有被加密,很不安全.如果我们把 properties.config 文件 ...
- css3新增功能
CSS3新增功能 1 CSS3选择器详解 1.1 基础选择器 通配选择器* 元素选择器E ID选择器#id CLASS选择器.class 群组选择器select1,selectN 1.2 层次选择器 ...
- ORACLE实用函数之一 ratio_to_report的简单使用
应用场景: 查询学生成绩级别(ABCDE)个人数和所占百分比(案列简单,勿喷). 表结构: create or replace table stu_grade( id varchar2(36), le ...
- 2018.09.08 AtCoder Beginner Contest 109简要题解
比赛传送门 水题大赛? 全是水题啊!!! T1 ABC333 就是判断是不是两个数都是奇数就行了. 代码: #include<bits/stdc++.h> using namespace ...
- 《C++ Primer (V4)》读书笔记
第2章 变量和基本类型 1.(P56)如果使用class关键字来定义类,那么定义在第一个访问标号前的任何成员都隐式指定为private:如果使用struct关键字,那么这些成员都是public. 第7 ...
- python小练习--属性
箭头这个作业: class Box:#定义一个类名为Box,类名后不必有括号,类包含类属性和类方法,这个类没有定义类属性 '''这是一个计算体积的类'''#这是这个类的__doc__属性,执行类后就可 ...
- Go语言的传参和传引用[转]
目录[-] 传参和传引用的问题 传slice不是传引用! 什么叫传引用? 为什么传slice不是传引用? 为什么很多人误以为slice是传引用呢? 传指针和传引用是等价的吗? 所有类型的函数参数都是传 ...
- hdu 1231 最大连续子序列 ,1003 Max Sum;
题目(1231) #include<stdio.h> #include<iostream> using namespace std; int main() { int K,nu ...