php 通过imagick 给png透明图片添加轮毂描边

先看效果

处理前:

处理后:

要求的效果很简单,就是一张png透明的人物图片,添加白色边框轮廓。

全网好像也没有直接答案

一开始用gd库处理,发现处理不了

后来用imagick ,imagick 也没有直接function

再后来说需要轮廓检测opencv

我的天啊,越搞越复杂

于是静下心想一想 如何处理这个问题,满足客户需求。

那么我可以先把这张png图片人物部分 给他处理成白色呀

然后我再放大一点

再把原来的图片合成上去。

不就ok了嘛

天才啊。我真是天才!!

只要5行代码就搞定了

<?php
ini_set('display_errors',1);
header('Content-type: image/jpeg');
$image = new Imagick('https://weixin.xxx.com/attachment/images/face/121961715046756.png');
$image1 = new Imagick('https://weixin.xxx.com/attachment/images/face/121961715046756.png');
$image->levelImage(255,255,255);
$image->resizeImage( $image->getImageWidth() * 1.05, $image->getImageHeight() * 1.05,    Imagick::FILTER_LANCZOS, 1 );

// 合成图片
$image->compositeImage($image1, Imagick::COMPOSITE_OVER, $image->getImageWidth() * 0.025, $image->getImageHeight() * 0.025);
 

echo $image;
?>


大家有没有好的方法!欢迎讨论!

相关推荐

  1. 2D图片

    2024-05-09 11:46:01       10 阅读
  2. 图片添加

    2024-05-09 11:46:01       24 阅读
  3. php.2安装Imagick扩展

    2024-05-09 11:46:01       40 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-09 11:46:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-09 11:46:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-09 11:46:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-09 11:46:01       20 阅读

热门阅读

  1. centos常用命令介绍

    2024-05-09 11:46:01       11 阅读
  2. 掌握SQL的时间序列分析利器:LEAD与LAG函数详解

    2024-05-09 11:46:01       11 阅读
  3. 学习R语言第六天

    2024-05-09 11:46:01       10 阅读