QQ爹の博客 QQ爹の博客

php生成文章二维码带logo

in 代码相关 read (1819) 577汉字 文章转载请注明来源!

前言

不知道大家发现没有,我的文章二维码已经加入了logo,这个二维码生成是我自己搭建的,因为我发现用公开的api生成二维码貌似不太稳定,所以自己搭建一个,来只服务自己。

php生成二维码带logo

这个功能不是原创,而且百度一搜一大把,不过搜到的都不是特别完整,说的比较完善的又不带logo,说带logo的二维码生成部分又说的很片面。
所以我结合两者,并且直接做成了压缩包,下载解压就能用了。

下载

点击下载

使用

url: 二维码对应的网址
m : 二维码白色边框尺寸,缺省值: 0px
e : 容错级别(errorLevel),可选参数如下(缺省值 L):

 L水平 7%的字码可被修正
 M水平 15%的字码可被修正
 Q水平 25%的字码可被修正
 H水平 30%的字码可被修正

p : 二维码尺寸,可选范围1-10(具体大小和容错级别有关)(缺省值:3)
https://qqdie.com/er/qrcode.php?&url=二维码对应的网址&p=二维码尺寸&m=二维码白色边框尺寸&e=容错级别
如本文二维码图片地址https://qqdie.com/er/qrcode.php?&url=https://qqdie.com/archives/erweimalogo/&p=4.8685

拓展

有些设置可以修改qrcode.php来实现,详细代码如下

<?php
include('phpqrcode/phpqrcode.php');
/取得GET参数
$url        = isset($_GET["url"]) ? $_GET["url"] : 'help';
$errorLevel = isset($_GET["e"]) ? $_GET["e"] : 'L';
$PointSize  = isset($_GET["p"]) ? $_GET["p"] : '3';
$margin     = isset($_GET["m"]) ? $_GET["m"] : '0';
preg_match('/https:\/\/([\w\W]*?)\//si', $url, $matches); 
//简单判断
//if ( $matches[1] != 'qqdie.com'|| $url == 'help') { //取消此行注释并注释下面一行,就能加入自定义的url过滤功能
if ( $url == 'help'){
    //简单的描述一下使用方法
    header("Content-type: text/html; charset=utf-8");
    echo '<title>在线二维码API接口| jrotty博客</title>';
    echo '<h1>欢迎使用jrotty博客在线二维码API服务!</h1>
    使用前请仔细查看参数说明:<br />
    <br />
    url: 二维码对应的网址<br /><br />
    m&nbsp&nbsp: 二维码白色边框尺寸,缺省值: 0px<br /><br />
    e&nbsp&nbsp: 容错级别(errorLevel),可选参数如下(缺省值 L):<br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbspL水平    7%的字码可被修正<br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbspM水平    15%的字码可被修正<br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbspQ水平    25%的字码可被修正<br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbspH水平    30%的字码可被修正<br />
    p&nbsp&nbsp: 二维码尺寸,可选范围1-10(具体大小和容错级别有关)(缺省值:3)<br /><br />
 ';
    exit();
} else  {
    //调用二维码生成函数
    createqr($url, $errorLevel, $PointSize, $margin);
} 
//简单二维码生成函数
function createqr($value,$errorCorrectionLevel,$matrixPointSize,$margin) {
    QRcode::png($value,'qrcode.png', $errorCorrectionLevel, $matrixPointSize, $margin);
 $logo= 'logo.jpg';
$QR = 'qrcode.png';//已经生成的原始二维码图 
if ($logo !== FALSE) { 
 $QR = imagecreatefromstring(file_get_contents($QR)); 
 $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); 
} 
//输出图片 
Header("Content-type: image/png");
ImagePng($QR);
}
?>

文章部分内容参考:
分享张戈博客自用的php网址在线转换二维码的API源码

jrotty WeChat Pay

微信打赏

jrotty Alipay

支付宝打赏

文章二维码

扫描二维码,在手机上阅读!

文章二维码php二维码
最后由Jrotty编辑于2016-06-27 13:02
发表新评论
已有 15 条评论
  1. asd
    asd
    回复

    不错,抄走抄走(滑稽

    1. Jrotty
      Jrotty
      回复

      @asd 转载别忘记添加原文链接哦,这个是基本的礼仪哦

  2. 爱国者捣蛋

    http://www.topscan.com/pingtai/没必要自己弄,免费的接口多得是

    1. Jrotty
      Jrotty
      回复

      @爱国者捣蛋 应该不支持https吧

  3. 三秋
    三秋
    回复

    ฅ( ̳• ◡ • ̳)ฅ大晚上来看看。

  4. Tokin
    Tokin
    回复

    打赏与拓展。。。。拓展。。。。

    1. Jrotty
      Jrotty
      回复

      @Tokin 这个位置过几天我会在弄弄的,暂时就这样凑合了,最近懒癌犯了>///<

  5. 御坂网络
    御坂网络
    回复

    好,这个功能不错.

    1. Jrotty
      Jrotty
      回复

      @御坂网络 其实这个我找了很久了,后来没办法,只好自己把网上搜到的捏合在一起了龴ↀ◡ↀ龴

  6. 夏风轻顾
    夏风轻顾
    回复

    我也是用的自己搭的,不过太懒了就没弄logo容错尺寸那些功能( ̄▽ ̄)

    1. 夏风轻顾
      夏风轻顾
      回复

      @夏风轻顾 不过好像你和我都用了同一个二维码生成程序,但是我加了防盗链功能,毕竟流量耗不起Σ(  ̄□ ̄||)

前篇 后篇

评论提交中...

雷姆
拉姆
音乐加载中...
0:00