(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
imagecolorexactalpha — Get the index of the specified color + alpha
Returns the index of the specified color+alpha in the palette of the image.
imageA GdImage object, returned by one of the image creation functions, such as imagecreatetruecolor() .
redValue of red component.
greenValue of green component.
blueValue of blue component.
alpha
A value between 0 and 127.
0 indicates completely opaque while
127 indicates completely transparent.
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.
| Version | Description |
|---|---|
| 8.0.0 |
image expects a GdImage
instance now; previously, a valid gd resource was expected.
|
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);
?>The above example will output something similar to:
Array ( [0] => 16711680 [1] => 2130706432 [2] => 939524095 [3] => 342163252 )
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!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.