Imagick::floodFillPaintImage
(No version information available, might only be in SVN)
Imagick::floodFillPaintImage — Changes the color value of any pixel that matches target
Descrierea
$fill
, float $fuzz
, mixed $target
, int $x
, int $y
, bool $invert
[, int $channel = Imagick::CHANNEL_DEFAULT
] )Changes the color value of any pixel that matches target and is an immediate neighbor. This method is a replacement for deprecated Imagick::paintFloodFillImage(). Această metodă este disponibilă dacă Imagick a fost compilat cu ImageMagick de versiunea 6.3.8 sau ulterior.
Parametri
-
fill -
ImagickPixel object or a string containing the fill color
-
fuzz -
Mărimea difuziei. Spre exemplu dacă stabiliți difuzia la 10, atunci culoarea roșie de intensitățile 100 și 102 respectiv sunt interpretate ca aceeași culoare.
-
target -
ImagickPixel object or a string containing the target color to paint
-
x -
X start position of the floodfill
-
y -
Y start position of the floodfill
-
invert -
If
TRUEpaints any pixel that does not match the target color. -
channel -
Înscrieți orice constantă a canalului care este validă pentru modul de canal. Pentru a aplica operația asupra mai multor canale, combinați constante de canal utilizând operatori binari. Valoarea implicită este
Imagick::CHANNEL_DEFAULT. Iată lista de referință a constantelor de canal
Valorile întoarse
Întoarce TRUE în caz de succes.
Exemple
Example #1 Imagick::floodfillPaintImage() example
<?php
/* Create new imagick object */
$im = new Imagick();
/* create red, green and blue images */
$im->newImage(100, 50, "red");
$im->newImage(100, 50, "green");
$im->newImage(100, 50, "blue");
/* Append the images into one */
$im->resetIterator();
$combined = $im->appendImages(true);
/* Save the intermediate image for comparison */
$combined->writeImage("floodfillpaint_intermediate.png");
/* The target pixel to paint */
$x = 1;
$y = 1;
/* Get the color we are painting */
$target = $combined->getImagePixelColor($x, $y);
/* Paints pixel in position 1,1 black and all neighboring
pixels that match the target color */
$combined->floodfillPaintImage("black", 1, $target, $x, $y, false);
/* Save the result */
$combined->writeImage("floodfillpaint_result.png");
?>
Exemplul de mai sus va afișa ceva similar cu:
