Preenche até encontrar uma cor especificada

# imagefilltoborder

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

imagefilltoborder — Preenche até encontrar uma cor especificada

### Descrição

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

imagefilltoborder() realiza um preenchimento cuja cor de borda é definida por `border_color`. O ponto de início do preenchimento é `x`, `y` (canto superior esquerdo é 0, 0) e a região é preenchida com a cor informada em `color`.

### Parâmetros

`image`
  Um objeto GdImage, retornado por uma das funções de criação de imagem, como imagecreatetruecolor().
`x`

  Coordenada x do início.

`y`

  Coordenada y do início.

`border_color`

  A cor da borda. Um identificador de cor criado com imagecolorallocate().

`color`

  A cor de preenchimento. Um identificador de cor criado com imagecolorallocate().

### Valor Retornado

Sempre retorna `true`.

### Registro de Alterações

Versão | Descrição
--- | ---
8.0.0 | O parâmetro `image` agora espera uma instância de GdImage; anteriormente, um resource `gd` válido era esperado.

### Exemplos

Exemplo #1 Preenchendo uma elipse com uma cor

    <?php
    // Cria a imagem, com fundo branco
    $im = imagecreatetruecolor(100, 100);
    imagefilledrectangle($im, 0, 0, 100, 100, imagecolorallocate($im, 255, 255, 255));

    // Desenha uma elipse com borda preta para ser preenchida
    imageellipse($im, 50, 50, 50, 50, imagecolorallocate($im, 0, 0, 0));

    // Define a borda e a cor de preenchimento
    $border = imagecolorallocate($im, 0, 0, 0);
    $fill = imagecolorallocate($im, 255, 0, 0);

    // Preenche a seleção
    imagefilltoborder($im, 50, 50, $border, $fill);

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

O exemplo acima produzirá algo semelhante a:

### Notas

O algoritmo não se lembra explicitamente de quais pixels já foram definidos, mas infere isso a partir da cor do pixel, portanto ele não consegue distinguir entre pixels que acabaram de ser definidos de pixels que já estavam lá. Isto significa que ao escolher uma cor de preenchimento que já existe na imagem pode gerar resultados indesejados.

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open