La función Imagick::filter() es una función incorporada en PHP que se usa para aplicar un núcleo de convolución personalizado a la imagen. Un núcleo, array de convolución o máscara es una array pequeña. Se utiliza para desenfoque, nitidez, relieve, detección de bordes y muchos más.
Sintaxis:
bool Imagick::filter( $ImagickKernel, $channel = Imagick::CHANNEL_UNDEFINED )
Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:
- $ImagickKernel: Es un kernel o una serie enlazada de múltiples kernels que se usan para aplicar en la imagen.
- $channel: Es una constante que se usa en base a los modos. Es de tipo entero y el valor por defecto del canal es Imagick::CHANNEL_DEFAULT.
Valor devuelto: Devuelve verdadero cuando el filtro a la imagen se aplica con éxito.
El siguiente programa ilustra la función Imagick::filter() en PHP:
Programa:
<?php // Declare an imagick object $imagick = new Imagick( 'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-9.png'); // Declare convolution matrix $matrix = [ [-1, 0, -1], [0, 5, 0], [-1, 0, -1], ]; $kernel = \ImagickKernel::fromMatrix($matrix); $strength = 0.5; // Scaling the image on kernel $kernel->scale($strength, \Imagick::NORMALIZE_KERNEL_VALUE); // Use addUnityKernel() function $kernel->addUnityKernel(1 - $strength); // Use filter() function $imagick->filter($kernel); header("Content-Type: image/jpg"); // Display the output image echo $imagick->getImageBlob(); ?>
Producción:
Referencia: https://www.php.net/manual/en/imagick.filter.php
Publicación traducida automáticamente
Artículo escrito por piyush25pv y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA