Php 调整/裁剪图像大小并添加空白
我有这个调整大小和裁剪功能:Php 调整/裁剪图像大小并添加空白,php,function,gd,image-resizing,Php,Function,Gd,Image Resizing,我有这个调整大小和裁剪功能: $file = imagecreatefromjpeg($imagefile["tmp_name"]); if($imagefile["type"] == "image/jpg" || $imagefile["type"] == "image/jpeg") { $uploaded_file = "/var/www/adimages/".$fid."-".$imagefile["name"]; } elseif($imagefile
$file = imagecreatefromjpeg($imagefile["tmp_name"]);
if($imagefile["type"] == "image/jpg" || $imagefile["type"] == "image/jpeg") {
$uploaded_file = "/var/www/adimages/".$fid."-".$imagefile["name"];
} elseif($imagefile["type"] == "image/png") {
$uploaded_file = "/var/www/adimages/".$fid."-".$imagefile["name"];
}
imagejpeg($file, $uploaded_file, 100);
chmod($uploaded_file, 0644);
list($width, $height, $type, $attr) = getimagesize($uploaded_file);
$this->imageSizeW = $width;
$this->imageSizeH = $height;
$this->newSizeW = 250;
$this->newSizeH = 400;
$aspect = $width / $height;
$new_aspect = $this->newSizeW / $this->newSizeH;
if($aspect >= $new_aspect) {
$new_height = $this->newSizeH;
$new_width = $width / ($height / $this->newSizeH);
} else {
$new_width = $this->newSizeW;
$new_height = $height / ($width / $this->newSizeW);
}
$img_source = imagecreatefromjpeg($uploaded_file);
$newimage = imagecreatetruecolor($this->newSizeW, $this->newSizeH);
imagecopyresampled($newimage, $img_source, 0 - ($new_width - $this->newSizeW) / 2, 0 - ($new_height - $this->newSizeH), 0, 0, $new_width, $new_height, $width, $height);
imagejpeg($newimage, $uploaded_file, 100);
}
这就像预期的一样,几乎是——当它裁剪时,它会删除图像的一部分。
我是否可以扩展/配置此功能,以便它可以调整图像大小/居中,并添加空白,使图像与原始图像一样,但仍然是250 x 400 px,而不是使用voret.net中的类上载0.32-这正是我想要的