PHP.nl

imagefilltoborder

imagefilltoborder

Flood fill to specific color

true **imagefilltoborder** GdImage $image int $x int $y int $border_color int $color
performs a flood fill

whose border color is defined by . The starting point for the fill is , (top left is 0, 0) and the region is filled with color . imagefilltoborder``border_color``x``y``color

xx-coordinate of start.

yy-coordinate of start.

border_colorThe border color. gd.identifier.color

colorThe fill color. gd.identifier.color

return.true.always

Voorbeeld: Filling an ellipse with a color

<?php
// Create the image handle, set the background to white
$im = imagecreatetruecolor(100, 100);
imagefilledrectangle($im, 0, 0, 100, 100, imagecolorallocate($im, 255, 255, 255));

// Draw an ellipse to fill with a black border
imageellipse($im, 50, 50, 50, 50, imagecolorallocate($im, 0, 0, 0));

// Set the border and fill colors
$border = imagecolorallocate($im, 0, 0, 0);
$fill = imagecolorallocate($im, 255, 0, 0);

// Fill the selection
imagefilltoborder($im, 50, 50, $border, $fill);

// Output
header('Content-type: image/png');
imagepng($im);
?>

The algorithm does not explicitly remember which pixels have already been set, but rather infers that from the color of the pixel, so it cannot distinguish between freshly set pixels and pixels that are already there. That means chosing any fill color that is already used in the image may yield undesired results.