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 相关文章推荐
使用 php4 加速 web 传输
Oct 09 PHP
php 生成静态页面的办法与实现代码详细版
Feb 15 PHP
php下使用curl模拟用户登陆的代码
Sep 10 PHP
PHP时间戳 strtotime()使用方法和技巧
Oct 29 PHP
PHP读取txt文本文件并分页显示的方法
Mar 11 PHP
php中注册器模式类用法实例分析
Nov 03 PHP
高质量PHP代码的50个实用技巧必备(下)
Jan 22 PHP
php7 安装yar 生成docker镜像
May 09 PHP
PHP7扩展开发教程之Hello World实现方法示例
Aug 03 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
Jun 16 PHP
PHP设计模式(七)组合模式Composite实例详解【结构型】
May 02 PHP
基于PHP实现用户在线状态检测
Nov 10 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
9条PHP编程小知识及易犯的小错误
2015/01/22 PHP
PHP判断是否连接上网络的方法
2015/07/01 PHP
一段实用的php验证码函数
2016/05/19 PHP
php实现微信支付之企业付款
2018/05/30 PHP
JavaScript脚本语言在网页中的简单应用
2007/05/13 Javascript
根据IP的地址,区分不同的地区,查看不同的网站页面的js代码
2013/02/26 Javascript
javascript实现tab切换特效
2015/11/12 Javascript
基于jQuery Ajax实现上传文件
2016/03/24 Javascript
ES6数组的扩展详解
2017/04/25 Javascript
ionic实现下拉刷新载入数据功能
2017/05/11 Javascript
Vue2.0 实现歌手列表滚动及右侧快速入口功能
2018/08/08 Javascript
vue中当图片地址无效的时候,显示默认图片的方法
2018/09/18 Javascript
浅谈VUE-CLI脚手架热更新太慢的原因和解决方法
2018/09/28 Javascript
laydate如何根据开始时间或者结束时间限制范围
2018/11/15 Javascript
用VueJS写一个Chrome浏览器插件的实现方法
2019/02/27 Javascript
详解如何更好的使用module vuex
2019/03/27 Javascript
js实现无缝轮播图效果
2020/03/09 Javascript
详解webpack的clean-webpack-plugin插件报错
2020/10/16 Javascript
element中Steps步骤条和Tabs标签页关联的解决
2020/12/08 Javascript
在Python中使用SimpleParse模块进行解析的教程
2015/04/11 Python
Python爬虫抓取手机APP的传输数据
2016/01/22 Python
python笔记:mysql、redis操作方法
2017/06/28 Python
python difflib模块示例讲解
2017/09/13 Python
Python numpy实现数组合并实例(vstack,hstack)
2018/01/09 Python
Python tkinter的grid布局及Text动态显示方法
2018/10/11 Python
PyTorch实现AlexNet示例
2020/01/14 Python
使用OpenCV实现人脸图像卡通化的示例代码
2021/01/15 Python
应届生服装设计自我评价
2013/09/20 职场文书
毕业生医学检验求职信
2013/10/16 职场文书
物业客服专员岗位职责
2013/11/30 职场文书
药学职务聘任书
2014/03/29 职场文书
秘书英文求职信
2014/04/16 职场文书
小学生期末评语
2014/04/21 职场文书
夫妻分居协议书范文
2014/11/26 职场文书
党员个人自我评价
2015/03/03 职场文书
高中诗歌鉴赏教学反思
2016/02/16 职场文书