copyimageresampled不适合我

时间:2012-11-21 09:01:58

标签: php image-resizing resampling

我想调整图片大小以使其不超过500px。 纵横比必须相同。 我没有看到我的图像有任何变化(960x960)。

这是我的代码:

public static function resizeImage($imagename) {
        list($width, $height) = getimagesize($imagename);
        if($width < 500)
            return $imagename;

        $ratio = $width / $height;
        $new_width = 500;
        $new_height = $new_width / $ratio;

        $image_p = imagecreatetruecolor($new_width, $new_height);
        $image = imagecreatefromjpeg($imagename);
        imagecopyresampled ($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

        return $imagename;
    }

这是imagecopyresampled的输入 Resource id #25|Resource id #27|0|0|0|0|500|500|960|960|

1 个答案:

答案 0 :(得分:0)

尝试而不是返回返回裁剪图片的名称:

//replace 
return $imagename;

//with 

return imagejpeg($image_p, null, 100);