Imagick::filter

(PECL imagick 3 >= 3.3.0)

Imagick::filterAplica un núcleo de convolución personalizado a la imagen

Advertencia

Esta función está DEPRECADA a partir de Imagick 3.4.4. Depender de esta funcionalidad está fuertemente desaconsejado.

Descripción

public function Imagick::filter(ImagickKernel $ImagickKernel, int $channel = Imagick::CHANNEL_UNDEFINED): bool

Aplica un núcleo de convolución personalizado a la imagen.

Parámetros

ImagickKernel

Una instancia de ImagickKernel que representa un solo núcleo o una serie de núcleos vinculados.

channel

Proporciona una constante de canal válida para su modo de canal. Para aplicarlo a más de un canal, combínense las constantes de canales utilizando un operador a nivel de bits. Por omisión, vale Imagick::CHANNEL_DEFAULT. Consúltese la lista de constantes de canales

Valores devueltos

Devuelve true en caso de éxito.

Ejemplos

Ejemplo #1 Imagick::filter()

<?php
function filter($imagePath) {
    $imagick = new \Imagick(realpath($imagePath));
    $matrix = [
        [-1, 0, -1],
        [0,  5,  0],
        [-1, 0, -1],
    ];

    $kernel = \ImagickKernel::fromMatrix($matrix);
    $strength = 0.5;
    $kernel->scale($strength, \Imagick::NORMALIZE_KERNEL_VALUE);
    $kernel->addUnityKernel(1 - $strength);

    $imagick->filter($kernel);
    header("Content-Type: image/jpg");
    echo $imagick->getImageBlob();
}

?>