php图片背景填充实例
时间:2021-07-01 10:21:17
帮助过:37人阅读
/** - * 添加背景
- * @param string $src 图片路径
- * @param int $w 背景图像宽度
- * @param int $h 背景图像高度
- * @return 返回加上背景的图片
- * **/
- public function addBg($src,$w,$h)
- {
- $bg = imagecreatetruecolor($w,$h);
- $white = imagecolorallocate($bg,255,255,255);
- imagefill($bg,0,0,$white);//填充背景
//获取目标图片信息 - $info=getimagesize($src);
- $width=$info[0];//目标图片宽度
- $height=$info[1];//目标图片高度
- switch ($info[2]){
- case 1:
- $img = imagecreatefromgif($src);
- break;
- case 2:
- $img = imagecreatefromjpeg($src);
- break;
- case 3:
- $img = imagecreatefrompng($src);
- break;
- default:
- exit('不支持的图像格式');
- break;
- }
- if($height < $h)
- {
- $x=0;
- $y=($h-$height)/2;//垂直居中
- }
- if($width < $w)
- {
- $x=($w-$width)/2;//水平居中
- $y=0;
- }
- if($height < $h && $width < $w){
- $x = ($w-$width)/2;
- $y = ($h-$height)/2;
- }
- imagecopymerge($bg,$img,$x,$y,0,0,$width,$height,100);
- imagejpeg($bg,$src,100);
- imagedestroy($bg);
- imagedestroy($img);
- return $src;
- }
|