PHP의 imagecolorresolvealpha() 함수는 이미지 팔레트에서 지정한 색상과 알파(투명도) 값을 조합한 색상의 인덱스를 가져오는 데 사용됩니다. 만약 해당 색상이 이미지에 존재하지 않으면, 새로운 색상을 팔레트에 추가한 후 그 인덱스를 반환합니다.
문법
imagecolorresolvealpha(img, red, green, blue, alpha)
매개변수
img: imagecreatetruecolor() 또는 imagecreatefromgif() 같은 함수로 생성한 이미지 리소스입니다.
red: 빨간색(Red) 구성 요소 값입니다.
green: 초록색(Green) 구성 요소 값입니다.
blue: 파란색(Blue) 구성 요소 값입니다.
alpha: 0부터 127 사이의 투명도 값입니다. 0은 완전히 불투명한 상태를, 127은 완전히 투명한 상태를 의미합니다.
반환값
imagecolorresolvealpha() 함수는 성공 시 해당 색상의 인덱스를 반환하며, 실패할 경우 false를 반환합니다.
예제
다음은 imagecolorresolvealpha() 함수를 사용하여 GIF 이미지에서 여러 색상의 인덱스를 확인하는 예제입니다.
<?php
$img = imagecreatefromgif('https://www.tutorialspoint.com/images/html.gif');
$colors = array();
$colors[] = imagecolorresolvealpha($img, 120, 0, 190, 0);
$colors[] = imagecolorresolvealpha($img, 110, 0, 140, 0);
$colors[] = imagecolorresolvealpha($img, 120, 190, 0, 0);
print_r($colors);
imagedestroy($img);
?>
출력 결과
위 코드를 실행하면 다음과 같은 출력 결과를 얻을 수 있습니다.
Array ( [0] => 128 [1] => 129 [2] => 130 )
참고 사항
이 함수는 GD 라이브러리가 설치되어 있어야 사용할 수 있으며, 주로 GIF 등 팔레트 기반 이미지 형식에서 유용하게 활용됩니다. 알파 값이 포함된 색상을 다룰 때는 imagecolorallocatealpha()와 함께 사용하면 더욱 효과적입니다.