问题描述
我在这里找到了伊恩·阿特金(Ian Atkin)的解决方案-Resize image in PHP-并试图对其进行修改以容纳png和gif,并保存调整大小后的图像。 Jpg可以工作,但是我得到的是png和gif的黑色图像(大小正确)。我不知道我在做什么错。这是代码:
function resize_image($file,$w,$h,$crop=FALSE) {
list($width,$height) = getimagesize($file);
$r = $width / $height;
if ($crop) {
if ($width > $height) {
$width = ceil($width-($width*abs($r-$w/$h)));
} else {
$height = ceil($height-($height*abs($r-$w/$h)));
}
$newwidth = $w;
$newheight = $h;
} else {
if ($w/$h > $r) {
$newwidth = $h*$r;
$newheight = $h;
} else {
$newheight = $w/$r;
$newwidth = $w;
}
}
if($extension=="gif") {
$src = imagecreatefromgif($file);
} elseif($extension=="png") {
$src = imagecreatefrompng($file);
} else {
$src = imagecreatefromjpeg($file);
}
$dst = imagecreatetruecolor($newwidth,$newheight);
imagecopyresampled($dst,$src,$newwidth,$newheight,$width,$height);
if($extension=="gif") {
imagegif($dst,$file);
} elseif($extension=="png") {
imagepng($dst,$file);
} else {
imagejpeg($dst,$file);
}
return $dst;
}
非常感谢您!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)