PHP의 imagepolygon() 함수는 GD 라이브러리를 사용하여 이미지 위에 다각형을 그리는 데 사용되는 함수입니다. 꼭짓점 좌표 배열과 색상을 지정하면 원하는 모양의 다각형을 간단하게 그릴 수 있습니다.
문법(Syntax)
bool imagepolygon( $img, $points, $num_points, $color)
매개변수(Parameters)
- $img:
imagecreatetruecolor()함수로 생성한 빈 이미지 리소스입니다. - $points: 다각형의 꼭짓점 좌표(x, y)를 담고 있는 배열입니다.
- $num_points: 다각형을 구성하는 꼭짓점의 총 개수입니다.
- $color:
imagecolorallocate()함수로 생성한 색상 식별자입니다.
반환값(Return)
imagepolygon() 함수는 성공 시 TRUE를 반환하고, 실패 시 FALSE를 반환합니다.
예제(Example)
다음은 삼각형을 그리는 예제 코드입니다:
<?php
$img = imagecreatetruecolor(400, 300);
$color = imagecolorallocate($img, 120, 160, 190);
$bgcolor = imagecolorallocate($img, 10, 100, 50);
imagefill($img, 0, 0, $bgcolor);
imagepolygon($img, array(
50, 50,
150, 200,
340, 200
),
3,
$color);
header('Content-type: image/png');
imagepng($img);
imagedestroy($img);
?>
코드 설명
- 먼저
imagecreatetruecolor()로 가로 400픽셀, 세로 300픽셀 크기의 빈 이미지를 생성합니다. imagecolorallocate()로 선 색상(RGB 120, 160, 190)과 배경색(RGB 10, 100, 50)을 정의합니다.imagefill()을 사용해 배경색으로 전체를 채웁니다.imagepolygon()에 세 개의 꼭짓점 좌표를 전달하여 삼각형을 그립니다.- 마지막으로
imagepng()로 PNG 이미지를 출력하고,imagedestroy()로 메모리를 해제합니다.
실행 결과(Output)
위 코드를 실행하면 초록색 배경 위에 파란 계열의 선으로 그려진 삼각형이 출력됩니다.

참고 사항
- 이 함수가 동작하려면 PHP에 GD 라이브러리가 활성화되어 있어야 합니다.
- 채워진 다각형을 그리고 싶다면
imagefilledpolygon()함수를 사용할 수 있습니다. - PHP 8 버전부터는 GdImage 객체와 GdColor 객체를 매개변수로 사용하는 방식으로 변경되었습니다.