2014-03-03 133 views
1

我有一个函数:PHP imagick调整大小丢失质量

public static function resize($data, $w, $h) 
{ 
    $image = new Imagick();  
    $image->readImageBlob($data); 
    $image->scaleImage($w, $h); 
    $data = $image->getImageBlob(); 
    return $data; 
} 

$data是图像的二进制字符串格式,它的起源尺寸为720x1280。在我的情况下,$w是180,$h是320.

我通过输出到网页显示$data

但它不像原点那么清楚。

有人能告诉我为什么吗?提前致谢。

+0

尝试通过第三个参数TRUE;。 '$ image-> scaleImage($ w,$ h,true); ' – Rikesh

+0

我试过了,不行:)。 – srain

+0

比可能尝试调整大小选项,而不是缩放图像。 – Rikesh

回答

0

请尝试调整图像:

<?php 

$thumb = new Imagick('myimage.gif'); 

$thumb->resizeImage(320,240,Imagick::FILTER_LANCZOS,1); 
$thumb->writeImage('mythumb.gif'); 

$thumb->destroy(); 

?> 
相关问题