(PHP 5 >= 5.1.0, PHP 7)
imageconvolution — Aplicar una matriz de convolución de 3x3, usando coeficiente e índice
$image
, array $matrix
, float $div
, float $offset
) : boolAplica una matriz de convolución a la imagen, usando el coeficiente y el índice dados.
image
Un recurso image, es devuelto por una de las funciones de creación de imágenes, como imagecreatetruecolor().
matrix
Una matriz de 3x3: una matriz de tres matrices de tres valores float.
div
El divisor del resultado de la convolución, usado para normalización.
offset
Índice de color.
Devuelve TRUE
en caso de éxito o FALSE
en caso de error.
Ejemplo #1 Poner en relieve el logotipo de PHP.net
<?php
$imagen = imagecreatefromgif('http://www.php.net/images/php.gif');
$relieve = array(array(2, 0, 0), array(0, -1, 0), array(0, 0, -1));
imageconvolution($imagen, $relieve, 1, 127);
header('Content-Type: image/png');
imagepng($imagen, null, 9);
?>
El resultado del ejemplo sería:
Ejemplo #2 Borrosidad gaussiana
<?php
$imagen = imagecreatetruecolor(180,40);
// Escribe el texto y aplica una borrosidad gaussiana a la imagen
imagestring($imagen, 5, 10, 8, 'Gaussian Blur Text', 0x00ff00);
$gaussiana = array(array(1.0, 2.0, 1.0), array(2.0, 4.0, 2.0), array(1.0, 2.0, 1.0));
imageconvolution($imagen, $gaussiana, 16, 0);
// Reescribe el texto para compararlo
imagestring($imagen, 5, 10, 18, 'Gaussian Blur Text', 0x00ff00);
header('Content-Type: image/png');
imagepng($imagen, null, 9);
?>
El resultado del ejemplo sería:
Esta función requiere GD 2.1.0 o superior.