Imagick::resampleImage
(PECL imagick 2, PECL imagick 3)
Imagick::resampleImage — Resample image to desired resolution
说明
   public Imagick::resampleImage(
float
float
int
float
): bool
  float
$x_resolution,float
$y_resolution,int
$filter,float
$blur): bool
Resample image to desired resolution.
参数
x_resolution- 
      
 y_resolution- 
      
 filter- 
      
 blur- 
      
 
返回值
   成功时返回 true。
  
示例
示例 #1 Imagick::resampleImage()
<?php
function resampleImage($imagePath) {
$imagick = new \Imagick(realpath($imagePath));
$imagick->resampleImage(200, 200, \Imagick::FILTER_LANCZOS, 1);
header("Content-Type: image/jpg");
    echo $imagick->getImageBlob();
}
?>
  +添加备注
  
用户贡献的备注 3 notes
  
  
  simon ¶
  
 
  9 years ago
  Please not that I had extremely high CPU usage using this function on Ubuntu linux 15.10. Switching to the resizeImage function fixed the problem.  
  
  bleighty at dvidshub dot net ¶
  
 
  11 years ago
  Please note that blur of 1 should not affect the image if I'm understanding correctly from this page:
http://www.php.net/manual/en/imagick.resizeimage.php  
  
  anagai at yahoo dot com ¶
  
 
13 years ago
  Lets say you want to reduce the resolution of uploaded images for the web.
The following will load a image at whatever resolution and resample it down to 72 dpi and save as a different file.
The dpi for setImageResolution() and resampleImage() should be whatever dpi your resampling too.
<?php
$image = new Imagick();
$image->readImage('image.jpg');
$image->setImageResolution(72,72);
$image->resampleImage(72,72,imagick::FILTER_UNDEFINED,0);
$image->writeImage('image72.jpg');
?>备份地址:http://www.lvesu.com/blog/php/imagick.resampleimage.php