标题:php 图像处理 抠图,生成背景透明png 图片 出处:沧海一粟 时间:Wed, 14 Mar 2018 09:27:22 +0000 作者:jed 地址:http://www.dzhope.com/post/1094/ 内容: *自定义一个图片等比缩放函数 *@param string $picname 被缩放图片名 *@param string $path 被缩放图片路径 *@param int $maxWidth 图片被缩放后的最大宽度 *@param int $maxHeight 图片被缩放后的最大高度 *@param string $pre 缩放后的图片名前缀,默认为"s_" *@return boolen 返回布尔值表示成功与否。 */ function imageResize($picname,$path,$maxWidth,$maxHeight,$pre="s_"){ $path = rtrim($path,"/")."/"; //1获取被缩放的图片信息 $info = getimagesize($path.$picname); //获取图片的宽和高 $width = $info[0]; $height = $info[1]; //2根据图片类型,使用对应的函数创建画布源。 switch($info[2]){ case 1: //gif格式 $srcim = imagecreatefromgif($path.$picname); break; case 2: //jpeg格式 $srcim = imagecreatefromjpeg($path.$picname); break; case 3: //png格式 $srcim = imagecreatefrompng($path.$picname); break; default: return false; //die("无效的图片格式"); break; } //3. 计算缩放后的图片尺寸 if($maxWidth/$width<$maxHeight/$height){ $w = $maxWidth; $h = ($maxWidth/$width)*$height; }else{ $w = ($maxHeight/$height)*$width; $h = $maxHeight; } //4. 创建目标画布 $dstim = imagecreatetruecolor($w,$h); //5. 开始绘画(进行图片缩放) imagecopyresampled($dstim,$srcim,0,0,0,0,$w,$h,$width,$height); //6. 输出图像另存为 switch($info[2]){ case 1: //gif格式 imagegif($dstim,$path.$pre.$picname); break; case 2: //jpeg格式 imagejpeg($dstim,$path.$pre.$picname); break; case 3: //png格式 imagepng($dstim,$path.$pre.$picname); break; } } Generated by Bo-blog 2.1.1 Release