项目需要,要生成带微信用户头像的二维码,谨此记录。首先抓取用户头像,没有自己造轮子自己封装微信接口sdk,我用了安正超大神的easywechat,这个sdk使用方便文档清晰,项目地址 https://easywechat.org。  然后选择生成二维码sdk,在github上找了一圈,最后选用 https://github.com/endroid/QrCode,原因这个star,fork最多

代码:

1、下载easywechatsdk代码 composer require "overtrue/wechat" 引用和配置信息,https://easywechat.org里面有详细的使用配置文档

                                $app = new Application($this->_options);$userService = $app->user;$user = $userService->get($uopenId);$headimgurl = $user->headimgurl;if(!$headimgurl){$qrmid = UPLOAD_PATH . '/Weixin/hlogo/default1.png';} else {$content = file_get_contents($headimgurl); // 得到二进制图片内容$im = imagecreatefromstring($content);imagepng($im, UPLOAD_PATH . '/Weixin/hlogo/' . $uopenId . '.png', 2);imagedestroy($im);$qrmid = UPLOAD_PATH . '/Weixin/hlogo/' . $uopenId . '.png';}

通过openid获取头像地址并保存到本地服务器(如果用户没有关注公众好获取不到头像地址则用默认的头像作为二维码的logo),由于生成二维码的logo的图片格式需要png格式,所以用imagepng保存用户头像为png格式到本地

2、生成带头像的二维码

用composer下载endroid代码,include_once引入 VENDER_PATH.'vendor/autoload.php'; 然后使用命名空间use Endroid\QrCode\QrCode;

                        $qrCode = new QrCode();$qrCode->setText('https://www.baidu.com')->setSize(300)->setErrorCorrection('high')->setForegroundColor(array('r' => 0, 'g' => 0, 'b' => 0, 'a' => 0))->setBackgroundColor(array('r' => 255, 'g' => 255, 'b' => 255, 'a' => 0))->setLogoSize(60)->setLogo($qrmid);$qrCode->render(UPLOAD_PATH . '/Weixin/hlogo/1.png');

1.png则为目标二维码

生成带微信头像的用户二维码相关推荐

  1. C#生成带背景和文字的二维码图片

    /// <summary>         /// 生成带背景和文字的二维码图片         /// </summary>         /// <param na ...

  2. Python学习之生成带logo背景图的二维码(静态和动态图)

    前言 二维码简称 QR Code(Quick Response Code),学名为快速响应矩阵码,是二维条码的一种,由日本的 Denso Wave 公司于 1994 年发明.现随着智能手机的普及,已广 ...

  3. 如何将网址链接生成在微信可用的网址二维码

    为什么微信扫二维码不能跳转,上网查了一下,微信自带的内置浏览器屏蔽了下载功能,所以才出现用微信扫一扫不能下载的情况.这时候我们一般会建议用户使用uc或者其他第三方浏览器自带的扫一扫功能下载.但是现在的 ...

  4. 如何用WxJump成功解决生成在微信可用的网址二维码的API接口

    现阶段,微信推广是传播信息速度最快的方法,见的最多的就是在海报上贴上微信二维码,让看到的人都能立刻了解到自己的产品,但是由于微信官方要维持一个绿色的环境, 因此对扫码推广有着非常苛刻的审查, 虽然没有 ...

  5. 如何调用API接口在线生成在微信可用的网址二维码

    做微信营销活动或者APK下载推广时候,域名经常被封,如何做到微信中正常使用呢?这就要借助一些工具来实现有效的操作. 之前公司有一个新的APP项目上线,让我们在项目首页做个二维码,然后用户用手机扫一扫就 ...

  6. PHP版单文件index.php直接生成QQ微信支付宝三合一收款二维码完整源码

    打开EditPlus 5类似的工具新建一个utf-8格式的php页面,将下面的源码复制进去,然后修改前十二行对应的信息即可,下面的两千多行代码为全自动生成内容无需修改,改好后保存名为index.php ...

  7. h5生成带参数的小程序二维码,在小程序上获取生成的参数验证

    生成二维码后,保存下来,在微信开发者工具中点击添加编译模式, const en = encodeURIComponent("phone=15526262525&name=莹莹& ...

  8. PHP使用phpqrcode生成带LOGO或文字的二维码

    一.加入文字的代码示例: //如果没有文件夹 则自动创建$nowDay = date('Y-m-d');if(!is_dir($_SERVER['DOCUMENT_ROOT'].$path.$nowD ...

  9. 在线生成在微信可用的网址二维码的API接口

    现在很多大网站都有这样的一个功能,使用手机扫描一下网页上的二维码便可快速在手机上访问网站.想要实现这样的功能其实很简单,下面分享一个在线生成网址二维码的API接口.都是采用http协议接口,无需下载安 ...

  10. 微信公众号渠道二维码怎么生成?可以进行用户分组吗?

    公众号渠道二维码是一种带参数的二维码,微信公众平台为服务号提供了生成带参二维码的接口,满足服务号的推广分析需求,运营者可以通过渠道二维码来判定粉丝来源,并对用户进行分组管理. 微信公众号渠道二维码的作 ...

最新文章

  1. 工业机器人抓取时怎么定位的?用什么传感器来检测?
  2. 在Laravel外使用Eloquent(一)
  3. ubuntu常用配置整理
  4. 信息系统项目管理知识--项目范围管理
  5. 简单的加密/解密算法_/c++
  6. MySQL 用户创建及设置
  7. 2019-03-18-算法-进化(有效的字母异位词)
  8. python获取当前时间和前一天时间
  9. 中的数组怎么转成结构体_传说中的“衡水体”应该怎么练?
  10. hdu 1106 字符串处理
  11. Spark入门实战系列--3.Spark编程模型(上)--编程模型及SparkShell实战
  12. Android UI学习之TextView
  13. 物业计算机管理系统论文,物业小区管理系统 计算机专业毕业论文.doc
  14. 像素值与灰度值的区别与关系
  15. 【OBS】OBS Studio 视频录制软件 的安装
  16. 不小心隐藏IDEA的main menu,让它恢复显示的解决方法
  17. mysql局域网访问6_mysql局域网访问
  18. dockerfile使用DEBIAN_FRONTEND
  19. 椭圆一般方程求解椭圆标准方程参数
  20. GIF修复(图片隐写)

热门文章

  1. java 穷举_java循环穷举
  2. python绘制小提琴图_Python:matplotlib 和 Seaborn 之热图、小提琴图和箱线图 (三十四)...
  3. mysql every derived table must_Mysql错误Every derived table must have its own alias解决方法
  4. 治近视的秘方!1000度近视降到只有200度
  5. 磁盘列阵(RAID)
  6. 大数据发展呈现十大趋势
  7. 同一服务器的跨库查询
  8. MySQL variables、procedure、function、trigger [vaynexiao]
  9. Windows查看电脑ip地址方法(用于连接远程桌面)
  10. JS时间戳进行判断,判断是否超时三十分钟