PHP iMagick图像压缩

Rob*_*est 4 php compression jpeg imagick

我是iMagick的新手,并且只发现了非常有限的PHP库文档.我很高兴调整图像大小并将它们写回硬盘驱动器,但我完全无法使用JPG压缩图像.

这是我到目前为止使用的代码

function scale_image($size = 200,$extension)
{
    if(!file_exists(ALBUM_PATH . $this->path . $this->filename . $extension))
    {
        $im = new imagick(ALBUM_PATH . $this->path . $this->filename);

        $width = $im->getImageWidth();
        $height = $im->getImageHeight();
        if($width > $height)
            $im->resizeImage($size, 0, imagick::FILTER_LANCZOS, 1); 
        else 
            $im->resizeImage(0 , $size, imagick::FILTER_LANCZOS, 1); 

        $im->setImageCompression(true);
        $im->setCompression(Imagick::COMPRESSION_JPEG);
        $im->setCompressionQuality(20); 

        $im->writeImage(ALBUM_PATH . $this->path . $this->filename . $extension); 
        $im->clear(); 
        $im->destroy(); 
    }
}
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

非常感谢

kov*_*nin 9

试试这个:

$im->setImageCompression(Imagick::COMPRESSION_JPEG);
$im->setImageCompressionQuality(20);
Run Code Online (Sandbox Code Playgroud)