php缩小png图片不损失透明色的解决方法


Posted in PHP onDecember 25, 2013

主要是利用gd库的两个方法:

imagecolorallocatealpha //分配颜色 + alpha
imagesavealpha //设置在保存 png 图像时保存完整的 alpha 通道信息

代码示例:

//获取源图gd图像标识符
$srcImg = imagecreatefrompng('./src.png');
$srcWidth = imagesx($srcImg);
$srcHeight = imagesy($srcImg);
//创建新图
$newWidth = round($srcWidth / 2);
$newHeight = round($srcHeight / 2);
$newImg = imagecreatetruecolor($newWidth, $newHeight);
//分配颜色 + alpha,将颜色填充到新图上
$alpha = imagecolorallocatealpha($newImg, 0, 0, 0, 127);
imagefill($newImg, 0, 0, $alpha);
//将源图拷贝到新图上,并设置在保存 PNG 图像时保存完整的 alpha 通道信息
imagecopyresampled($newImg, $srcImg, 0, 0, 0, 0, $newWidth, $newHeight, $srcWidth, $srcHeight);
imagesavealpha($newImg, true);
imagepng($newImg, './dst.png');
PHP 相关文章推荐
一篇入门的php Class 文章
Apr 04 PHP
mysql 搜索之简单应用
Apr 27 PHP
php 服务器调试 Zend Debugger 的安装教程
Sep 25 PHP
PHP设计模式之结构模式的深入解析
Jun 13 PHP
探讨:php中在foreach中使用foreach ($arr as &$value) 这种类型的解释
Jun 24 PHP
php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
Dec 15 PHP
php实现可运算的验证码
Nov 10 PHP
PHP实现的oracle分页函数实例
Jan 25 PHP
PHP7新特性foreach 修改示例介绍
Aug 26 PHP
PHP基于堆栈实现的高级计算器功能示例
Sep 15 PHP
php 中htmlentities导致中文无法查询问题
Sep 10 PHP
PHP智能识别收货地址信息实例
Jan 05 PHP
php查看请求头信息获取远程图片大小的方法分享
Dec 25 #PHP
php对数组排序的简单实例
Dec 25 #PHP
ubuntu12.04使用c编写php扩展模块教程分享
Dec 25 #PHP
php中apc缓存使用示例
Dec 25 #PHP
php递归获取目录内文件(包含子目录)封装类分享
Dec 25 #PHP
输入值/表单提交参数过滤有效防止sql注入的方法
Dec 25 #PHP
zend framework文件上传功能实例代码
Dec 25 #PHP
You might like
浅析php插件 Simple HTML DOM 用DOM方式处理HTML
2013/07/01 PHP
php根据身份证号码计算年龄的实例代码
2014/01/18 PHP
php实现的click captcha点击验证码类实例
2014/09/23 PHP
php使用google地图应用实例
2014/12/31 PHP
php结合mysql与mysqli扩展处理事务的方法
2016/06/29 PHP
Yii实现文章列表置顶功能示例
2016/10/18 PHP
PHP实现电商订单自动确认收货redis队列
2017/05/17 PHP
理解JSON:3分钟课程
2011/10/28 Javascript
JavaScript获取某年某月的最后一天附截图
2014/06/23 Javascript
wap图片滚动特效无css3元素纯js脚本编写
2014/08/22 Javascript
JS中捕获console.log()输出的方法
2015/04/16 Javascript
简单解析JavaScript中的__proto__属性
2016/05/10 Javascript
JS+HTML5实现的前端购物车功能插件实例【附demo源码下载】
2016/10/17 Javascript
Rollup处理并打包JS文件项目实例代码
2018/05/31 Javascript
对angularJs中ng-style动态改变样式的实例讲解
2018/09/30 Javascript
Vue项目pdf(base64)转图片遇到的问题及解决方法
2018/10/19 Javascript
JavaScript数组去重的几种方法
2019/04/07 Javascript
关于微信小程序获取小程序码并接受buffer流保存为图片的方法
2019/06/07 Javascript
jsonp格式前端发送和后台接受写法的代码详解
2019/11/07 Javascript
[03:47]2015国际邀请赛第三日现场精彩回顾
2015/08/08 DOTA
基于windows下pip安装python模块时报错总结
2018/06/12 Python
使用Python检测文章抄袭及去重算法原理解析
2019/06/14 Python
Python画图高斯分布的示例
2019/07/10 Python
python递归法实现简易连连看小游戏
2020/03/25 Python
python 实现检验33品种数据是否是正态分布
2019/12/09 Python
美国狗旅行和户外用品领先供应商:kurgo
2020/08/18 全球购物
SQL SERVER面试资料
2013/03/30 面试题
自我反省检讨书
2014/01/23 职场文书
大学运动会通讯稿
2014/01/28 职场文书
水电站项目建议书
2014/05/12 职场文书
会计演讲稿范文
2014/05/23 职场文书
干部作风建设工作总结
2014/10/29 职场文书
给老师的一封感谢信
2015/01/20 职场文书
离婚协议书的范本
2015/01/27 职场文书
2016年端午节红领巾广播稿
2015/12/18 职场文书
iPhone13再次曝光
2021/04/15 数码科技