当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


PHP Imagick averageImages()用法及代码示例


Imagick::averageImages()函数是PHP中的内置函数,用于在图像处理后平均创建两个或更多图像。它在PECL imagick 2.0.0版本中定义良好。此函数在Imagick的其他版本中已弃用,因此在PECL imagick 2.1.0版本中已由Imagick::mergeImageLayers()代替。

用法:

Imagick Imagick::averageImages( void )

返回值:成功时,此函数将返回一个新的imagick对象。


错误/异常:发生错误时引发ImagickException。

以下示例程序旨在说明PHP中的Imagick::averageImages()函数:

程序:

<?php  
  
// Store the path of an image into variable 
$imagePath = 
"https://media.geeksforgeeks.org/wp-content/uploads/20190912230402/hexgon_compositeImage.png"; 
  
// Create a new Imagick object 
$imagick = new \Imagick($imagePath); 
  
// Create a new ImagickDraw object 
$draw = new \ImagickDraw(); 
  
// Draw an image and set its font size 
$draw->setFontSize(35); 
  
// Set the color of text 
$fillcolor = new \ImagickPixel("red"); 
  
// Set the fill color 
$draw->setFillColor($fillcolor); 
  
// Set the gravity 
$draw->setGravity(Imagick::GRAVITY_CENTER); 
  
// Annotate the text "GeeksforGeeks" to the image 
$imagick->annotateImage( $draw, 0, 0, 0, "GeeksforGeeks"); 
  
// Assign thresholdcolor to the image  
$thresholdColor = "rgb(255, 0, 0)"; 
  
$imagick->blackthresholdimage($thresholdColor); 
  
// Flop the image 
$imagick->flopImage(); 
  
// Turn image to oil paint image 
$imagick->oilPaintImage(1); 
$imagick->resetIterator(); 
  
// Merging all image layers and flattened 
$imagick->mergeImageLayers(Imagick::LAYERMETHOD_FLATTEN); 
  
// It works in PECL imagick 2.0.0 version, 
// comment it when higher version. 
$imagick->averageImages();  
  
header("Content-Type: image/png"); 
header("Cache-Control: no-store, no-cache");   
  
// Downloading output image of  
// Imagick::averageImage() function 
header('Content-Disposition: attachment; filename="average.png"'); 
  
echo $imagick->getImageBlob(); 
  
?>

输出:

参考: https://www.php.net/manual/en/imagick.averageimages.php



相关用法


注:本文由纯净天空筛选整理自VigneshKannan3大神的英文原创作品 PHP | Imagick averageImages() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。