
所以需要对thumb方法做个改造,让他支持png和gif格式的缩略图裁剪
找到代码:phpcms\libs\classes\image.class.php 找到thumb方法,找到代码:
注释掉紧跟的两行代码
- if($type=='gif' || $type=='png') {
然后添加如下代码:
- //$background_color = imagecolorallocate($thumbimg, 255, 255, 255); // 指派一个绿色
- //imagecolortransparent($thumbimg, $background_color); // 设置为透明色,若注释掉该行则输出绿色的图
- $c = imagecolorallocatealpha($thumbimg, 255 , 255 , 255 , 127);//拾取一个完全透明的颜色
- imagealphablending($thumbimg, false);//关闭混合模式,以便透明颜色能覆盖原画布
- imagefill($thumbimg, 0 , 0 , $c);//填充
- imagesavealpha($thumbimg, true);
保存,然后更新缓存即可。
说明
1、255,255,255表示白色背景,自己可以选择
2、127表示alpha透明度,0-127之间即可,127表示完全透明
缩略图效果图:

文章点评