Imagick::colorMatrixImage

(PECL imagick 3 >= 3.3.0)

Imagick::colorMatrixImageApplique une transformation de couleur à une image

Description

public Imagick::colorMatrixImage(array $color_matrix = Imagick::CHANNEL_DEFAULT): bool

Applique une transformation de couleur à une image. La méthode permet des changements de saturation, une rotation de teinte, une luminance en alpha, et divers autres effets. Bien que des matrices de transformation de taille variable puissent être utilisées, on utilise généralement une matrice 5x5 pour une image RGBA et une 6x6 pour CMYKA (ou RGBA avec des décalages). La matrice est similaire à celles utilisées par Adobe Flash, sauf que les décalages sont dans la colonne 6 plutôt que 5 (en support des images CMYKA) et les décalages sont normalisés (divisez le décalage Flash par 255).

Liste de paramètres

color_matrix

Valeurs de retour

Retourne true en cas de succès.

Exemples

Exemple #1 Imagick::colorMatrixImage()

<?php
function colorMatrixImage($imagePath, $colorMatrix) {
$imagick = new \Imagick(realpath($imagePath));
$imagick->setImageOpacity(1);

//Une matrice de couleur devrait ressembler à:
// $colorMatrix = [
// 1.5, 0.0, 0.0, 0.0, 0.0, -0.157,
// 0.0, 1.0, 0.5, 0.0, 0.0, -0.157,
// 0.0, 0.0, 1.5, 0.0, 0.0, -0.157,
// 0.0, 0.0, 0.0, 1.0, 0.0, 0.0,
// 0.0, 0.0, 0.0, 0.0, 1.0, 0.0,
// 0.0, 0.0, 0.0, 0.0, 0.0, 1.0
// ];

$background = new \Imagick();
$background->newPseudoImage($imagick->getImageWidth(), $imagick->getImageHeight(), "pattern:checkerboard");

$background->setImageFormat('png');

$imagick->setImageFormat('png');
$imagick->colorMatrixImage($colorMatrix);

$background->compositeImage($imagick, \Imagick::COMPOSITE_ATOP, 0, 0);

header("Content-Type: image/png");
echo
$background->getImageBlob();
}

?>

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top