PHP | Función Imagick averageImages()

La función Imagick::averageImages() es una función incorporada en PHP que se usa para crear un promedio de dos o más imágenes después del procesamiento de imágenes. Está bien definido en la versión PECL imagick 2.0.0. Esta función se ha depreciado en versiones posteriores de Imagick, por lo que se reemplaza por Imagick::mergeImageLayers() en la versión PECL imagick 2.1.0. Sintaxis:

Imagick Imagick::averageImages( void )

Valor de retorno: esta función devuelve un nuevo objeto imagick en caso de éxito. Errores/Excepciones: Lanza ImagickException mientras ocurre el error. El siguiente programa ilustra la función Imagick::averageImages() en PHP: Programa: 

php

<?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();
 
?>

Salida: Referencia: https://www.php.net/manual/en/imagick.averageimages.php

Publicación traducida automáticamente

Artículo escrito por VigneshKannan3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *