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!
imagecolorexactalpha
(PHP 4 >= 4.0.6, PHP 5)
imagecolorexactalpha — Get the index of the specified color + alpha
Opis
Returns the index of the specified color+alpha in the palette of the image.
Parametry
- obraz
-
Zasób obrazu, zwrócony przez jedną z funkcji tworzących obrazy, taką jak imagecreatetruecolor().
- red
-
Value of red component.
- green
-
Value of green component.
- blue
-
Value of blue component.
- alpha
-
A value between 0 and 127. 0 indicates completely opaque while 127 indicates completely transparent.
Zwracane wartości
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.
Przykłady
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);
?>
Powyższy przykład wyświetli coś podobnego do:
Array ( [0] => 16711680 [1] => 2130706432 [2] => 939524095 [3] => 342163252 )
Notatki
Informacja: Ta funkcja wymaga GD 2.0.1 lub nowszej (2.0.28 lub nowsza jest zalecana).
imagecolorexactalpha
12-Jul-2005 03:09
08-Nov-2002 07:01
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.
