(PECL imagick 3 >= 3.3.0)
Imagick::filter — Applique un noyau de convolution personnalisé à l'image
Cette fonction est OBSOLÈTE à partir de Imagick 3.4.4. Dépendre de cette fonctionnalité est fortement déconseillé.
$ImagickKernel, int $channel = Imagick::CHANNEL_UNDEFINED): boolApplique un noyau de convolution personnalisé à l'image.
ImagickKernelUne instance de ImagickKernel qui représente soit un seul noyau, soit une série de noyaux liés.
channel
N'importe quelle constante de canal valide pour le mode de canal utilisé. Pour l'appliquer à plus d'un canal, il faut combiner les constantes de canaux en utilisant des opérateurs bit à bit. Par défaut, vaut Imagick::CHANNEL_DEFAULT. Se reporter à la liste des constantes de canaux
Retourne true en cas de succès.
Exemple #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();
}
?>