php图片背景填充实例

发布时间:2019-08-30编辑:脚本学堂
本文介绍了php实现背景图片填充的方法,一个php操作背景图片的例子,有需要的朋友参考下。

例子,php背景图片填充代码。
在生成图片时需要按大小生成,判断图片大小是否与规定的大小相同,如果不同要对背景进行填充。

图片操作类:
 

复制代码 代码示例:

<?php
/**
* 添加背景
* @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;
}