0

我正在使用简单的图像调整大小方法

list($width, $height) = getimagesize($filename);
$new_width = $width * $percent;
$new_height = $height * $percent;


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


imagejpeg($image_p, null, 100);

Eventhoug 我已经将质量最大化,当涉及到较小的图像尺寸时,生成的图像质量很差(原始 500 像素到新的 100 像素)。

有没有其他方法可以提高图像质量?

4

2 回答 2

3

是的,有一种方法可以提高质量:如果可能的话,使用ImageMagick而不是 GD 库。GD 库的质量很差。

于 2013-03-05T16:10:04.073 回答
0

尝试这个

<?php

header('Content-type: image/jpeg');

$image = new Imagick('image.jpg');

// If 0 is provided as a width or height parameter,
// aspect ratio is maintained
$image->thumbnailImage(100, 0);

echo $image;

?>

来源http://php.net/manual/en/imagick.examples-1.php

于 2014-07-21T08:51:08.047 回答