imagecolorexactalpha

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

imagecolorexactalphaObtém o índice da cor e alfa especificados

Descrição

imagecolorexactalpha(
    GdImage $image,
    int $red,
    int $green,
    int $blue,
    int $alpha
): int

Retorna o índice, na paleta da imagem, da cor e do alfa especificados.

Parâmetros

image

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

red

Valor do componente vermelho.

green

Valor do componente verde.

blue

Valor do componente azul.

alpha

Um valor entre 0 e 127. 0 indica completamente opaco enquanto que 127 indica completamente transparente.

Os parâmetros de cores são inteiros entre 0 e 255 ou hexadecimais entre 0x00 e 0xFF.

Valor Retornado

Retorna o índice, na paleta da imagem, da cor + alfa especificados, ou -1 se a cor + alfa não existir na paleta.

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 Obtém cores da logomarca GD

<?php

// Configura uma imagem
$im = imagecreatefrompng('./gdlogo.png');

$colors = Array();
$colors[] = imagecolorexactalpha($im, 255, 0, 0, 0);
$colors[] = imagecolorexactalpha($im, 0, 0, 0, 127);
$colors[] = imagecolorexactalpha($im, 255, 255, 255, 55);
$colors[] = imagecolorexactalpha($im, 100, 255, 52, 20);

print_r($colors);

// Libera da memória
imagedestroy($im);
?>

O exemplo acima produzirá algo semelhante a:

Array
(
    [0] => 16711680
    [1] => 2130706432
    [2] => 939524095
    [3] => 342163252
)

Veja Também

add a note add a note

User Contributed Notes 2 notes

up
1
matt at matt-darby dot com
19 years ago
Note that a color allocated with imagecolorexactalpha won't show alpha (it will be opaque) when used with imageline(). Use imagerectangle() set to your normal start and end points instead.

Ensure that the image is created via imagecreatetruecolor() as well!
up
-1
phpdoc-comment at aditus dot nu
22 years ago
What might be misleading in the docs is that if the specified color + alpha channel does not exist it will be created. So if you like to use an alpha channel in your image enable alpha blending and then create you color using this method.
To Top