(PECL imagick 2 >= 2.3.0, PECL imagick 3)
Imagick::floodFillPaintImage — Modifie la valeur de la couleur de chaque pixel correspondant à la cible
Description
public
Imagick::floodFillPaintImage(
mixed
$fill
,
float
$fuzz
,
mixed
$target
,
int
$x
,
int
$y
,
bool
$invert
,
int
$channel
= Imagick::CHANNEL_DEFAULT
): bool
Liste de paramètres
-
fill
-
Objet ImagickPixel ou une chaîne contenant la couleur de remplissage.
-
fuzz
-
La quantité de poussière de papier. Par exemple, le fait de définir la poussière de papier à 10 et la couleur rouge à une intensité de 100 et de 102 ne sera pas interprété comme la même couleur.
-
target
-
Objet ImagickPixel ou une chaîne contenant la couleur cible à peindre.
-
x
-
Position de départ en X du pot de peinture.
-
y
-
Position de départ en Y du pot de peinture.
-
invert
-
Si vaut true
, peint chaque pixel qui ne correspond pas à la couleur cible.
-
channel
-
Fournit une constante de canal valide pour votre mode de canal. Pour l'appliquer à plus d'un canal, combinez les constantes de canaux en utilisant un opérateur sur les bits. Par défaut, vaut Imagick::CHANNEL_DEFAULT
. Reportez-vous à la liste des constantes de canaux
Valeurs de retour
Retourne true
en cas de succès.
Exemples
Exemple #1 Exemple avec imagick::floodfillpaintimage()
<?php
/* Crée un nouvel objet imagick */
$im = new Imagick();
/* Crée les images bleus, vertes et rouges */
$im->newImage(100, 50, "red");
$im->newImage(100, 50, "green");
$im->newImage(100, 50, "blue");
/* Ajoute l'image dans une autre */
$im->resetIterator();
$combined = $im->appendImages(true);
/* Sauvegarde de l'image intermédiaire pour comparaison */
$combined->writeImage("floodfillpaint_intermediate.png");
/* Le pixel cible à peindre */
$x = 1;
$y = 1;
/* Récupère la couleur à utiliser pour peindre */
$target = $combined->getImagePixelColor($x, $y);
/* Peint le pixel à la position 1,1 en noir, ainsi que tous les pixels voisins
qui correspondent à la couleur cible */
$combined->floodfillPaintImage("black", 1, $target, $x, $y, false);
/* Sauvegarde le résultat */
$combined->writeImage("floodfillpaint_result.png");
?>
Résultat de l'exemple ci-dessus est similaire à :

floodfillpaintimage()" width="100" height="150" />

floodfillpaintimage()" width="100" height="150" />