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
설명
int imagecolorexactalpha
( resource $image
, int $red
, int $green
, int $blue
, int $alpha
)
Returns the index of the specified color+alpha in the palette of the image.
인수
- image
-
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.
반환값
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.
예제
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);
?>
위 예제의 출력 예시:
Array
(
[0] => 16711680
[1] => 2130706432
[2] => 939524095
[3] => 342163252
)
주의
Note: 이 함수는 GD 2.0.1 이상이 필요합니다. (2.0.28 이상을 권장합니다)
matt at matt-darby dot com
11-Jul-2005 12:09
phpdoc-comment at aditus dot nu
08-Nov-2002 03: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.
