PHP图片压缩

   说道php的图片处理大家首先想起的可能就是GD库了,大多数开源程序也是用GD来处理图片的,
但是它只能现实诸如调整大小、增加水印等基础功能,要想用GD来做复杂图形是非常困难的。接下来
给大家介绍一个能实现非常丰富的功能基于命令行的图像处理软件ImageMagick 对于php也有一个很
好的库支持imagick

imagick Provides a wrapper to the ImageMagick library.

下面就是利用imagick做的图片无损压缩


/** * @param $path * @param string $type * @param bool $crop * @return string * @throws ImagickException * 图片压缩 */ function ImgResize($path,$type='JPG',$crop=false) { $base64=fileToBase64($path); $imageBlob = base64_decode($base64); $imagick = new Imagick(); $imagick->gt;readImageBlob($imageBlob); $imagick->gt;setImageFormat($type); $imagick->gt;setImageCompression(Imagick::COMPRESSION_JPEG); $a = $imagick->gt;getImageCompressionQuality() * 0.75; if ($a == 0) { $a = 75; } $imagick->gt;setImageCompressionQuality($a); $imagick->gt;stripImage(); $thumb_path=“文件保存路径”.basename($path); $imagick->gt;writeImage($thumb_path); $imagick->gt;destroy(); return $thumb_path; } $filePath=ImgResize($path,$ext);
鲁ICP备16017569号-2