Imagick::floodFillPaintImage
(No version information available, might only be in SVN)
Imagick::floodFillPaintImage — Cambia el valor del color de cualquier píxel que coincida con el objetivo
Descripción
Cambia el valor del color de cualquier píxel que coincida con el objetivo y esté en el área inmediata. Este método es un sustituto del método obsoleto Imagick::paintFloodFillImage(). Este método está disponible si Imagick ha sido compilado con la versión 6.3.8 (o superior) de ImageMagick.
Parámetros
- fill
-
Objeto ImagickPixel o una cadena que contiene el color de relleno
- fuzz
-
La cantidad de difusión. Por ejemplo, setee fuzz a 10 y el color rojo a intensidades de 100 y 102 respectivamente son ahora interpretados como el mismo color.
- target
-
Objeto ImagickPixel o una cadena que contiene el color objetivo a dibujar
- x
-
Posición X del inicio del relleno
- y
-
Posición Y del inicio del relleno
- invert
-
Si es TRUE se pinta cualquier píxel que no coincida con el color objetivo.
- channel
-
Proporciona cualquier contante de canal que sea válida para su modo de canal. Para aplicarlo a más de un canal, combine constantes de canal using bitwise operadores bit a bit. El valor por defecto para Imagick::CHANNEL_DEFAULT. Referirse a esta lista de constantes de canal
Valores devueltos
Devuelve TRUE en caso de éxito.
Ejemplos
Example #1 Ejemplo de Imagick::floodfillPaintImage()
<?php
/* Crear un nuevo objeto imagick */
$im = new Imagick();
/* Crear imágenes de color rojo, verde y azul */
$im->newImage(100, 50, "red");
$im->newImage(100, 50, "green");
$im->newImage(100, 50, "blue");
/* Añadir las imágenes para que sean una */
$im->resetIterator();
$combinado = $im->appendImages(true);
/* Guardar la imagen intermedia para la comparación */
$combinado->writeImage("floodfillpaint_intermedia.png");
/* El píxel objetivo a pintar */
$x = 1;
$y = 1;
/* Obtener el color con el que vamos a pintar */
$objetivo = $combinado->getImagePixelColor($x, $y);
/* Pinta el píxel en la posición 1,1 negro y todos los píxeles
cercanos que coincidan con el color objetivo */
$combinado->floodfillPaintImage("black", 1, $objetivo, $x, $y, false);
/* Guardar el resultado */
$combinado->writeImage("floodfillpaint_resultado.png");
?>
El resultado del ejemplo sería algo similar a:
