PHP 8.4.1 Released!

imagecolorexactalpha

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

imagecolorexactalphaGet the index of the specified color + alpha

Descrizione

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

Returns the index of the specified color+alpha in the palette of the image.

Elenco dei parametri

image

Una risorsa immagine, restituita da una delle funzioni di creazione immagine, come imagecreatetruecolor().

red

Valore della componente rossa.

green

Valore della componente verde.

blue

Valore della componente blu.

alpha

A value between 0 and 127. 0 indicates completely opaque while 127 indicates completely transparent.

The colors parameters are integers between 0 and 255 or hexadecimals between 0x00 and 0xFF.

Valori restituiti

Returns the index of the specified color+alpha in the palette of the image, or -1 if the color does not exist in the image's palette.

Log delle modifiche

Versione Descrizione
8.0.0 image expects a GdImage instance now; previously, a valid gd resource was expected.

Esempi

Example #1 Get colors from the GD logo

<?php

// Setup an image
$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);

// Free from memory
imagedestroy($im);
?>

Il precedente esempio visualizzerà qualcosa simile a:

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

Vedere anche:

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