function pngMerge($o_pic,$out_pic){$begin_r = 255;$begin_g = 250;$begin_b = 250;list($src_w, $src_h) = getimagesize($o_pic);// 获取原图像信息 宽高$src_im = imagecreatefrompng($o_pic); //读取png图片print_r($src_im);imagesavealpha($src_im,true);//这里很重要 意思是不要丢了$src_im图像的透明色$src_white = imagecolorallocatealpha($src_im, 255, 255, 255,127); // 创建一副白色透明的画布for ($x = 0; $x < $src_w; $x++) {for ($y = 0; $y < $src_h; $y++) {$rgb = imagecolorat($src_im, $x, $y);$r = ($rgb >> 16) & 0xFF;$g = ($rgb >> 8) & 0xFF;$b = $rgb & 0xFF;if($r==255 && $g==255 && $b == 255){imagefill($src_im,$x, $y, $src_white); //填充某个点的颜色imagecolortransparent($src_im, $src_white); //将原图颜色替换为透明色}if (!($r <= $begin_r && $g <= $begin_g && $b <= $begin_b)) {imagefill($src_im, $x, $y, $src_white);//替换成白色imagecolortransparent($src_im, $src_white); //将原图颜色替换为透明色}}}$target_im = imagecreatetruecolor($src_w, $src_h);//新图imagealphablending($target_im,false);//这里很重要,意思是不合并颜色,直接用$target_im图像颜色替换,包括透明色;imagesavealpha($target_im,true);//这里很重要,意思是不要丢了$target_im图像的透明色;$tag_white = imagecolorallocatealpha($target_im, 255, 255, 255,127);//把生成新图的白色改为透明色 存为tag_whiteimagefill($target_im, 0, 0, $tag_white);//在目标新图填充空白色imagecolortransparent($target_im, $tag_white);//替换成透明色imagecopymerge($target_im, $src_im, 0, 0, 0, 0, $src_w, $src_h, 100);//合并原图和新生成的透明图imagepng($target_im,$out_pic);return $out_pic;}$o_pic = '1.png';
$name = pngMerge($o_pic,'aaaa.png');
print_r($name);

php 处理png图片白色背景色改为透明色相关推荐

  1. MATLAB如何让输出的图片的背景色为白色(方便文档编写)

    一.MATLAB如何让绘出的图片的背景色为白色? matlab中绘图的图片往往背景色不是白色,系统默认灰色.将其背景色换为白色,可以方便直接在Word和WPS中插入图片,使其更美观. 二.修改方法 在 ...

  2. 如何把eclipse的背景色改为豆沙色

    本文转自http://blog.csdn.net/ylchou/article/details/9258047 按照链接博客里说的,改后只能讲代码编辑区的背景色改为豆沙绿,但是其他区域依然是白色. 然 ...

  3. win10背景色改成豆沙绿 锁屏后失效修改方式

    今天将公司电脑从windows8升级到windows10之后,将电脑锁屏后,再解锁则设置的背景色豆沙绿失效,从网上搜了很多方式得以解决,记录下来供大家参考. 普通的一键护眼只是修改[HKEY_CURR ...

  4. Win10系统如何将eclipse背景色改成豆沙绿

    Win10系统如何将eclipse背景色改成豆沙绿 目前只能修改注册表 目前只能修改注册表 win7可以通过修改窗口颜色实现eclipse工作台颜色改变 1. win+r -> regedit ...

  5. 使用photoshop(ps)将图片的背景色变成透明

    在前端开发过程中,经常会用到图片(图片背景色是透明色的图片).有时候设计比较忙,自己学习了一下,总结如下: 第一步,打开Photoshop(ps),并在打开要变为透明色的图片.如下图: 第二步,双击右 ...

  6. python怎么换背景颜色_用opencv给图片换背景色的示例代码

    图像平滑 模糊/平滑图片来消除图片噪声 OpenCV函数:cv2.blur(), cv2.GaussianBlur(), cv2.medianBlur(), cv2.bilateralFilter() ...

  7. html不透明度效果,html代码透明度 html图片透明度 怎么改不了呢

    首先创建一个html文件 为div添加样式.在标签后面创建一个,在标签里设置rgba类的高和背景透明度的样式(rgba(R,G,B,A)) html中设置元素透明度的代码怎么写? 问题分析: HTML ...

  8. 怎样将图片的背景色换成透明的?怎么让白底图片变透明?

    ​想要将图片的背景色换成透明的,该怎么处理呢?其实除了使用ps之外,还有一种比较简单的图片去白底变透明的方法,今天就给大家详细讲解一下图片转化透明底的步骤,使用专业的图片去底色(https://www ...

  9. html 图片 把绝对路径改为相对路径,html中想把图片绝对路径 改成相对路径怎么操作?...

    首先要我们要弄懂相对路径修改成绝对路径那么必须要知道路径的基本概念. html中的路径:指文件存放的位置,在网页中利用路径可以引用文件,完成:插入图像.视频等功能.表示在html中路径的使用方式有两种 ...

最新文章

  1. @include与jsp:include的区别
  2. Docker(一):Docker核心技术预览
  3. oracle PL/SQL
  4. 【安全漏洞】Cisco命令注入漏洞CVE-2021-1414分析
  5. 论文阅读:Multi-scale orderless pooling of deep convolutional activation features
  6. apollo数据库安装与常见错误说明
  7. UriComponentsBuilder和UriComponents url编码
  8. Palo Alto Networks全球化安全堡垒理念 提升企业防御能力
  9. maven插件依赖_当Maven依赖插件位于
  10. LTDC/DMA2D—液晶显示
  11. mysql如何修改开启允许远程连接
  12. 论文浅尝 | DSKReG:基于关系GNN的推荐知识图谱可微抽样
  13. 再破记录!2019天猫双11八小时总成交1504.9亿,开场后8分1秒发货量破1亿
  14. C++之父访谈录:我也没想到 C ++ 会这么成功!
  15. java 任务链模式,flink部署运行架构
  16. 前端计算机英语单词,解决文件命名,变量命名头皮发麻,单词超多1700个前端专属单词,css常用命名单词【起名字太烦了全背下来内卷吧小伙伴大前端时代来临了】
  17. GPS 相关知识科普
  18. mysql数据库实验4
  19. CRA图像 Clean Random Access (CRA) Pictures
  20. CentOS7里ping命令详解

热门文章

  1. 使用按键精灵实现界面点击自动化
  2. Python学习笔记(纯代码)
  3. ICC学习——LAB0A
  4. 常见的Linux命令缩写
  5. 关于在多重积分以及曲线曲面积分中对称性的应用
  6. 英特尔发布第三代全新可扩展处理器,加速5G网络转型
  7. Python和C语言哪个更容易学,感觉学了C语言有点难,只学过C语言的大学生很迷茫?
  8. 网络连接感叹号上不了网怎么办
  9. iOS应⽤签名原理浅析
  10. 云服务器网卡mac地址修改,云服务器 改mac地址吗