(PHP 4 >= 4.3.2, PHP 5, PHP 7)
imagecolorallocatealpha — Allocate a color for an image
$image
, int $red
, int $green
, int $blue
, int $alpha
) : int
imagecolorallocatealpha() behaves identically to
imagecolorallocate() with the addition of the transparency
parameter alpha
.
image
An image resource, returned by one of the image creation functions, such as 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.
red
, green
and blue
parameters are integers
between 0 and 255 or hexadecimals between 0x00 and 0xFF.
A color identifier or FALSE
if the allocation failed.
This function may
return Boolean FALSE
, but may also return a non-Boolean value which
evaluates to FALSE
. Please read the section on Booleans for more
information. Use the ===
operator for testing the return value of this
function.
Version | Description |
---|---|
5.1.3 |
Returns FALSE if the allocation failed. Previously
-1 was returned.
|
Example #1 Example of using imagecolorallocatealpha()
<?php
$size = 300;
$image=imagecreatetruecolor($size, $size);
// something to get a white background with black border
$back = imagecolorallocate($image, 255, 255, 255);
$border = imagecolorallocate($image, 0, 0, 0);
imagefilledrectangle($image, 0, 0, $size - 1, $size - 1, $back);
imagerectangle($image, 0, 0, $size - 1, $size - 1, $border);
$yellow_x = 100;
$yellow_y = 75;
$red_x = 120;
$red_y = 165;
$blue_x = 187;
$blue_y = 125;
$radius = 150;
// allocate colors with alpha values
$yellow = imagecolorallocatealpha($image, 255, 255, 0, 75);
$red = imagecolorallocatealpha($image, 255, 0, 0, 75);
$blue = imagecolorallocatealpha($image, 0, 0, 255, 75);
// drawing 3 overlapped circle
imagefilledellipse($image, $yellow_x, $yellow_y, $radius, $radius, $yellow);
imagefilledellipse($image, $red_x, $red_y, $radius, $radius, $red);
imagefilledellipse($image, $blue_x, $blue_y, $radius, $radius, $blue);
// don't forget to output a correct header!
header('Content-Type: image/png');
// and finally, output the result
imagepng($image);
imagedestroy($image);
?>
The above example will output something similar to: