현재 위치: > 최신 기사 목록> ImageOpenPolygon ()을 사용할 때 색상을 설정하는 방법

ImageOpenPolygon ()을 사용할 때 색상을 설정하는 방법

M66 2025-05-29

PHP에서 ImageOpenPolygon () 함수는 이미지에 다각형을 그리는 데 사용됩니다. 이 함수의 구문은 다음과 같습니다.

 bool imageopenpolygon(resource $image, array $points, int $num_points, int $color)

매개 변수 분석 :

  1. $ image : 대상 이미지 자원은 일반적으로 imageCreate () 또는 imageCreatefromjpeg () 와 같은 함수에 의해 생성됩니다.

  2. $ 포인트 : 다각형의 각 지점의 좌표를 포함하는 배열. 각 좌표는 두 개의 정수 값 (x 및 y)으로 구성됩니다.

  3. $ num_points : 다각형의 정점 수.

  4. $ 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);
?>

코드 구문 분석 :

  1. 이미지 자원 만들기 : imageCreate ()를 통해 400x400 픽셀의 이미지를 만듭니다.

  2. 색상 할당 : imageColorAllother ()를 사용하여 각각 배경과 다각형에 색상을 할당하십시오. 배경은 흰색이며 (RGB : 255, 255, 255), 다각형은 파란색입니다 (RGB : 0, 0, 255).

  3. 다각형 드로우 : ImageOpenPolygon () 함수를 통해 세트 정점 배열 $ 포인트 및 색상 $ polygon_color 를 사용하여 다각형을 그립니다.

참고 :

  • ImageOpenPolygon () 함수는 이미지 리소스를 자동으로 닫지 않으므로 이미지를 파괴하고 메모리를 확보하기 위해 imageStroy () 함수를 사용해야합니다.

  • 투명성 효과를 사용하려면 imagecolorallocatealpha ()를 사용하여 투명성으로 색상을 생성 할 수 있습니다.

위의 방법을 사용하면 이미지에서 다른 색상의 다각형을 쉽게 그릴 수 있습니다.