imagefilltoborder

(PHP 4, PHP 5, PHP 7, PHP 8)

imagefilltoborderRellena una región con un color específico

Descripción

imagefilltoborder(
    GdImage $image,
    int $x,
    int $y,
    int $border_color,
    int $color
): true

imagefilltoborder() rellena con el color color toda la región dentro de la región limitada por el color border_color. El punto de partida es (x, y) (la esquina superior izquierda es el origen (0,0)) y el color de la región es color.

Parámetros

image

Un objeto GdImage, retornado por una de las funciones de creación de imágenes, como imagecreatetruecolor().

x

X: coordenada de inicio.

y

Y: coordenada de inicio.

border_color

El color del borde. Un identificador de color creado con imagecolorallocate().

color

El color de relleno. Un identificador de color creado con imagecolorallocate().

Valores devueltos

Retorna siempre true.

Historial de cambios

Versión Descripción
8.0.0 image ahora espera una instancia de GdImage; anteriormente, se esperaba un resource gd válido.

Ejemplos

Ejemplo #1 Relleno de una elipse con un color

<?php
// Creación de un gestor de imagen, luego define el color de fondo
// a blanco
$im = imagecreatetruecolor(100, 100);
imagefilledrectangle($im, 0, 0, 100, 100, imagecolorallocate($im, 255, 255, 255));

// Dibuja una elipse cuyos bordes serán negros
imageellipse($im, 50, 50, 50, 50, imagecolorallocate($im, 0, 0, 0));

// Define el borde y rellena la elipse del color elegido
$border = imagecolorallocate($im, 0, 0, 0);
$fill = imagecolorallocate($im, 255, 0, 0);

// Rellena la selección
imagefilltoborder($im, 50, 50, $border, $fill);

// Visualización y liberación de la memoria
header('Content-type: image/png');
imagepng($im);
?>

Resultado del ejemplo anterior es similar a:

Visualización del ejemplo: imagefilltoborder()

Notas

El algoritmo no recuerda explícitamente qué píxeles ya han sido definidos, sino que lo infiere a partir del color del píxel, por lo que no puede distinguir entre un píxel que acaba de ser definido y un píxel que ya estaba presente. Esto significa que elegir cualquier color de relleno que ya esté presente en la imagen puede producir resultados no deseados.