Imagick::evaluateImage

(PECL imagick 2, PECL imagick 3)

Imagick::evaluateImageAplica una expresión a una imagen

Descripción

Imagick::evaluateImage(int $op, float $constant, int $channel = Imagick::CHANNEL_ALL): bool

Aplica una expresión aritmética, relacional, o lógica a una imagen. Use estos operadores para aclarar u oscurecer una imagen, para aumentar o disminuir el contraste de una imagen, o para producir el "negativo" de una imagen.

Parámetros

op

La evaluación del operador

constant

El valor del operador

channel

Proporcione cualquier constante de canal que sea válida para su modo de canal. Para aplicar más de un canal, combine las constantes channeltype usando operadores a nivel de bits. Consulte esta lista de constantes de canal.

Ejemplos

Ejemplo #1 Usando Imagick::evaluateImage()

Usando evaluateImage para reducir la opacidad de una imagen.

<?php
// Crea un nuevo objecto con la imagen
$im = new Imagick('example-alpha.png');

// Reduce el alfa en un 50%
$im->evaluateImage(Imagick::EVALUATE_DIVIDE, 2, Imagick::CHANNEL_ALPHA);

// Muestra la imagen
header("Content-Type: image/png");
echo
$im;
?>

Valores devueltos

Devuelve true en caso de éxito.

Errores/Excepciones

Lanza ImagickException en caso de error.

add a note add a note

User Contributed Notes 1 note

up
1
nils dot rocine at gmail dot com
12 years ago
What worked for me to convert a JPG source file to a semi-transparent PNG.

<?php
    $srcImagick
= new Imagick($srcPath);
   
   
$pathTo50Perc = 'transparent1.png';
   
   
$srcImagick->setImageAlphaChannel(Imagick::ALPHACHANNEL_OPAQUE);
   
   
$srcImagick->evaluateImage(Imagick::EVALUATE_DIVIDE, 2, Imagick::CHANNEL_ALPHA);

   
$srcImagick->writeImage($pathTo50Perc);
?>
To Top