(PHP 4, PHP 5, PHP 7, PHP 8)
imagefilltoborder — Rellena una región con un color específico
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
.
image
Un recurso image, es devuelto 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 creato con imagecolorallocate().
color
El color de relleno. Un identificador de color creato con imagecolorallocate().
Versión | Descripción |
---|---|
8.0.0 |
image expects a GdImage
instance now; previously, a valid gd resource was expected.
|
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);
?>
El resultado del ejemplo sería algo similar a:
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.