PHP에서 ImageOpenPolygon () 함수는 이미지에 다각형을 그리는 데 사용됩니다. 이 함수의 구문은 다음과 같습니다.
bool imageopenpolygon(resource $image, array $points, int $num_points, int $color)
$ image : 대상 이미지 자원은 일반적으로 imageCreate () 또는 imageCreatefromjpeg () 와 같은 함수에 의해 생성됩니다.
$ 포인트 : 다각형의 각 지점의 좌표를 포함하는 배열. 각 좌표는 두 개의 정수 값 (x 및 y)으로 구성됩니다.
$ num_points : 다각형의 정점 수.
$ color : 일반적으로 imagecolorallocate () 또는 imagecolorallocatealpha () 함수에 의해 생성 된 다각형을 그리는 데 사용되는 색상.
ImageOpenPolygon () 함수에서 $ color 매개 변수는 다각형의 채우기 색상을 결정합니다. 색상을 설정하려면 먼저 imageColorAllocate () 함수를 사용하여 색상 값을 할당해야합니다. 이 기능의 형식은 다음과 같습니다.
int imagecolorallocate(resource $image, int $red, int $green, int $blue)
$ image 가 대상 이미지 자원 인 경우 $ red , $ green 및 $ blue는 각각 0에서 255 사이의 색상의 RGB 값입니다.이 기능을 통해 다른 색상을 설정할 수 있습니다.
<?php
// a 400x400 이미지
$image = imagecreate(400, 400);
// 색상을 할당합니다
$bg_color = imagecolorallocate($image, 255, 255, 255); // 흰색 배경
$polygon_color = imagecolorallocate($image, 0, 0, 255); // 파란색 다각형
// 다각형의 정점을 설정하십시오
$points = array(
100, 100, // 가리키다 1 (x1, y1)
300, 100, // 가리키다 2 (x2, y2)
350, 250, // 가리키다 3 (x3, y3)
250, 350, // 가리키다 4 (x4, y4)
150, 250 // 가리키다 5 (x5, y5)
);
// 이미지에 다각형을 그립니다
imageopenpolygon($image, $points, count($points) / 2, $polygon_color);
// 출력 이미지
header('Content-Type: image/png');
imagepng($image);
// 이미지 자원을 파괴하십시오
imagedestroy($image);
?>
이미지 자원 만들기 : imageCreate ()를 통해 400x400 픽셀의 이미지를 만듭니다.
색상 할당 : imageColorAllother ()를 사용하여 각각 배경과 다각형에 색상을 할당하십시오. 배경은 흰색이며 (RGB : 255, 255, 255), 다각형은 파란색입니다 (RGB : 0, 0, 255).
다각형 드로우 : ImageOpenPolygon () 함수를 통해 세트 정점 배열 $ 포인트 및 색상 $ polygon_color 를 사용하여 다각형을 그립니다.
ImageOpenPolygon () 함수는 이미지 리소스를 자동으로 닫지 않으므로 이미지를 파괴하고 메모리를 확보하기 위해 imageStroy () 함수를 사용해야합니다.
투명성 효과를 사용하려면 imagecolorallocatealpha ()를 사용하여 투명성으로 색상을 생성 할 수 있습니다.
위의 방법을 사용하면 이미지에서 다른 색상의 다각형을 쉽게 그릴 수 있습니다.