Imagick - 调整大小时,图像变得模糊

Imagick - When resizing, image gets blurry

我正在尝试调整 pdf(我从图像转换而来)的大小,并且我正在尝试按比例调整(增加)图像的大小。

$imagick = new \Imagick();
$imagick->readImage($path);

$imagick->resizeImage(595,842,\Imagick::FILTER_CUBIC, 1, true);

// and this:
// $imagick->adaptiveResizeImage(595,842, true); 

$imagick->setImageFormat('pdf');
$imagick->writeImage($endpath);

但是图像越来越模糊。然而,这并不是一张质量差的图像,而且图像可以达到那个尺寸而不会受到干扰。 (例如,如果我让 Twilio 去做(通过传真 api),同样的图像可以达到那个比例)。

我也试过将 resizeImage 的模糊参数放在“1”和“0.1”之间

原版pdf(你也可以see it here,如果你想试试):

我调整大小的 pdf(模糊 1):

我的 "adaptive resized" pdf:

如果光栅化和放大,您将从一个非常小的 pdf 开始。所以这会导致模糊。但是如果你增加输入密度,它在 ImageMagick 中对我来说很好用

convert -density 600 input.pdf -resize 595x842 result.png

我不太了解 Imagick,但请尝试以下操作。根据需要降低 resizeImage 中的模糊值,使其更清晰。

$imagick = new \Imagick();
$imagick->readImage($path);
$imagick->Imagick::setImageResolution( 600, 600 );
$imagick->resizeImage(595,842,\Imagick::FILTER_CATROM, 1, true);
$imagick->setImageFormat('pdf');
$imagick->writeImage($endpath);