laravel框架生成海报,包括头像二维码实现过程,再次记录一下

第一步安装

composer require intervention/image

第二步,在config/app.php 在 providers 添加

Intervention\Image\ImageServiceProvider::class,

在 aliases 中添加

'Image' => Intervention\Image\Facades\Image::class,

第三步,在控制器中引入

use Image;

第四步就是使用啦

  //签到海报生成public function SignPoster(Request $request){ //海报路径$poster_url ='xxx.com/upload/images/haibao.png';//海报为底图$img = Image::make($poster_url); //微信头像路径$avatar_img = 'xxx.com/upload/images/touxiang.png';//获取微信圆形头像$touxiang = $this->test($avatar_img);//拼接头像地址$head_img = env("APP_URL").'/'.$touxiang;//第一个参数头像地址,第二个参数头像显示位置 后两个参数为头像坐标$img->insert($head_img, 'bottom-left', 35, 30);//二维码地址$code_img ='xxx.com/upload/images/code.png';$img->insert($code_img , 'bottom-right', 35, 30);//微信昵称$img->text('昵称', 180, 940, function ($font) {$font->file(base_path() . '/public/2.ttf');$font->size(30);});//图片地址$time = time();$img_src = './uploads/share/' . $time. '.jpg';//生成$img->save($img_src);return $this->ret_json(20000, '海报信息', ['img_src' => env('APP_URL') . $img_src]);}//微信头像变圆方法public  function test($url,$path='upload/images/'){  $w = 132;  $h=132; // original size  微信默认头像大小 高132,宽132$original_path= $url;  $dest_path = $path.uniqid().'.png'; //没有就创建目录if(!file_exists($path)){  mkdir($path,0777,true);}$src = imagecreatefromstring(file_get_contents($original_path));  $newpic = imagecreatetruecolor($w,$h);  imagealphablending($newpic,false);  $transparent = imagecolorallocatealpha($newpic, 0, 0, 0, 127);  $r=$w/2;  for($x=0;$x<$w;$x++)  for($y=0;$y<$h;$y++){  $c = imagecolorat($src,$x,$y);  $_x = $x - $w/2;  $_y = $y - $h/2;  if((($_x*$_x) + ($_y*$_y)) < ($r*$r)){  imagesetpixel($newpic,$x,$y,$c);  }else{  imagesetpixel($newpic,$x,$y,$transparent);  }  }  imagesavealpha($newpic, true);  imagepng($newpic, $dest_path);  imagedestroy($newpic);  imagedestroy($src);  return $dest_path;  }  

laravel扩展Images生成海报相关推荐

  1. linux生成海报时字体问题,研发:k8s pod 服务生成海报时字体出现乱码

    原标题:研发:k8s pod 服务生成海报时字体出现乱码 在使用容器化部署时,基础镜像使用 alpine 如果在系统处理时,需要用到其他字体需要,自行安装. 安装微软相关字体 FROM alpine: ...

  2. PHP使用Grafika合成图片,生成海报图

    需求背景: 在小程序上生成海报图,但在保存图片时,只能保存其中的小程序码图片,保存下来的图片过于单调,且无法确认该图片的作用性,所以需要调整为保存一整张海报图. 海报效果图: 需求分析: 在海报图中, ...

  3. 下载量最高 100 个 Laravel 扩展包推荐

    本文经授权转自 PHPHub 社区,后续更新将以 PHPHub 帖子内容 和 GitHub 内容 为准. 说明 Laravel 另一个令人喜欢的地方,是拥有活跃的开发者社区,而活跃的开发者社区带来的, ...

  4. 下载量最高的 100 个 Laravel 扩展包推荐

    Laravel 另一个令人喜欢的地方,是拥有活跃的开发者社区,而活跃的开发者社区带来的,是繁华的扩展包生态. 本文对 Packagist 上打了 Laravel 标签 的扩展包进行整理,截止到现在 2 ...

  5. 【转】下载量最高的 100 个 Laravel 扩展包推荐

    说明 Laravel 另一个令人喜欢的地方,是拥有活跃的开发者社区,而活跃的开发者社区带来的,是繁华的扩展包生态. 本文对 Packagist 上打了 Laravel 标签 的扩展包进行整理,截止到现 ...

  6. tp5.0 FAST 生成海报图

    推销部门的海报,大致类容都差不多,经常会修改一些简介,诊疗范围,擅长病种等等,刚开始想到的是利用扩展截图然后去下载,网上的例子倒是不多,目前有两个例子 zyan/url2pic-sdk CSDN地址 ...

  7. 简单几步写一个laravel扩展包

    为什么80%的码农都做不了架构师?>>>    laravel使用composer来管理扩展包,理解composer和laravel的开发模式,可以通过简单的几个步骤,快速写出一个l ...

  8. Mybatis生成器插件扩展,生成OR操作

    Mybatis生成器插件扩展,生成OR操作 ManExample example = new ManExample();ManExample.Criteria and = example.create ...

  9. Mybatis生成器插件扩展,生成findInSet方法

    Mybatis生成器插件扩展,生成findInSet方法 public Criteria andNameFindInSet(String value) {addCriterionPattern(&qu ...

最新文章

  1. 图像标记工具Labelme和LabelImg
  2. centos 安装mysql5.7_Zabbix 4.2.5 安装部署实践详解
  3. 实用JavaScript网页特效编程百宝箱pdf
  4. 二 计算机技术与机械电子技术的关系,机械电子工程与人工智能的关系初探
  5. react源码解读 {createClass}
  6. JavaScript 代码简洁之道
  7. CNET:乔布斯留给我们的12条宝贵经验
  8. hibernate DetachedCriteria实现多表关联查询createAlias的使用
  9. 【java与智能设备】CH07_01_Android中的文件存储
  10. 【算法笔记】初识离散化
  11. 3U VPX板卡设计
  12. Flask流式传输文件
  13. Film Stocks for Mac(PS胶片模拟调色插件)
  14. 揭秘大厂的物联网关键技术
  15. EXCEL表格单元格中有数字和文字怎么将数字部分提取出来
  16. c语言a-gt;ave=0.0什么意思?,来位c语言的大神把,来把这个程序解释一遍吧!跪求啊...
  17. 外媒评选出来的中国五大人工智能(AI) 公司
  18. 一开始互联网如洪水猛兽,慢慢地,人类开始驾驭在线这匹快马。我们对在线世界的发现和探索还没有开始,在线对人类的影响也远没有开始...
  19. smobiler仿京东app搜索页面
  20. IDEA2022 创建基于Maven的SpringBoot聚合单应用项目

热门文章

  1. requests利用selenium,代理Ip,云打码,验证码抠图操作 爬取搜狗微信公众号内容
  2. 明日之后手游安卓模拟器电脑版攻略提前看
  3. 【博客专家】新功能:优秀博文直推极客头条
  4. IOS - 上APPSTORE为何因IPv6被拒?
  5. 卡特加特“飞碟”万能红外遥控器,一个控全屋所有家电!支持语音遥控定时手机,传统家电变智能
  6. [Python] Codecombat攻略 远边的森林 Forest (1-40关)
  7. JavaScript案例——打地鼠游戏及其实现
  8. win10linux日历表,UI超棒!新版微软Win10日历体验手记
  9. ssh研究生毕业环节管理系统 ssh框架 MVC模式MYSQL
  10. java电信计费项目论文_毕业论文-基于JAVA开发的电信IP计费系统3.doc