현재 위치: > 최신 기사 목록> ImagePolygon () 함수의 기본 사용 방법은 다각형을 빠르게 그리는 방법은 무엇입니까?

ImagePolygon () 함수의 기본 사용 방법은 다각형을 빠르게 그리는 방법은 무엇입니까?

M66 2025-06-22

PHP에서 imagePolygon () 함수는 이미지에 다각형을 그리는 데 사용되는 함수입니다. 개발자가 삼각형, 사각형, 펜타곤 등과 같은 간단한 기하학적 그림을 생성하는 데 도움이 될 수 있습니다.이 기능은 GD 이미지 라이브러리를 기반으로하므로 GD 라이브러리를 사용하기 전에 서버에 설치하고 활성화해야합니다.

기본 구문

 bool imagepolygon(resource $image, array $points, int $num_points, int $color)
  • $ 이미지 : 대상 이미지 리소스. 일반적으로 imageCreatetRueColor () 또는 imageCreatefromjpeg () 와 같은 함수에 의해 만들어집니다.

  • $ 포인트 : 다각형의 정점의 모든 좌표를 포함하는 배열. 배열의 각 지점은 [x1, y1, x2, y2, ...] 형식의 좌표 쌍입니다.

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

  • $ color : 다각형의 색상을 그립니다. imageColorAllocate () 함수를 통해 색상을 얻을 수 있습니다.

샘플 코드

 <?php
// 진정한 색상 이미지를 만듭니다
$image = imagecreatetruecolor(200, 200);

// 색상을 할당합니다
$bg_color = imagecolorallocate($image, 255, 255, 255); // 흰색 배경
$polygon_color = imagecolorallocate($image, 0, 0, 255); // 파란색 다각형

// 배경색을 채우십시오
imagefill($image, 0, 0, $bg_color);

// 다각형의 정점을 정의하십시오
$points = [
    50, 50,
    150, 50,
    150, 150,
    50, 150
];

// 다각형을 그립니다
imagepolygon($image, $points, 4, $polygon_color);

// 브라우저에 이미지를 출력합니다
header('Content-Type: image/png');
imagepng($image);

// 이미지 자원을 파괴하십시오
imagedestroy($image);
?>

코드 구문 분석

  1. 이미지 만들기 : imageCreatetRuecolor (200, 200) 를 통해 200x200의 진정한 색상 이미지를 만듭니다.

  2. 색상 할당 : imageColorAllother ()를 사용하여 배경색과 다각형 색상, 흰색과 파란색을 각각 생성하십시오.

  3. 다각형 그리기 : 다각형의 정점을 정의하고 imagePolygon () 함수로 전달하면 매개 변수 $ 포인트 에는 정점의 좌표 배열이 포함되어 있습니다. 여기서 사변형은 정의되며, 정점은 (50, 50), (150, 50), (150, 150) 및 (50, 150)입니다.

  4. 출력 이미지 : 헤더 ( 'Content-Type : Image/PNG')를 사용하여 응답 헤더를 설정하고 브라우저에 PNG 이미지를 반환 한 다음 ImagePng ()를 사용하여 이미지를 출력하십시오.

  5. 이미지 자원 파괴 : 메모리 누출을 피하기 위해 ImageStroy ()를 사용하여 이미지 리소스를 자유롭게하십시오.

ImagePolygon () 함수를 사용하여 복잡한 다각형을 그립니다

육각형이나 펜타곤과 같은 더 복잡한 다각형을 그려 보려면 정점 좌표 만 조정하면됩니다. 예를 들어, 육각형을 그리려면 다음과 같은 좌표를 설정할 수 있습니다.

 $points = [
    100, 20,
    140, 40,
    140, 80,
    100, 100,
    60, 80,
    60, 40
];

$ 포인트 배열을 조정하면 다양한 모양의 다각형을 쉽게 그릴 수 있습니다.

주목해야 할 것

  • ImagePolygon ()은 다각형을 자동으로 채우지 않고 다각형의 가장자리 만 그립니다. 색상을 채워야하는 경우 ImageFill () 또는 ImageFilledPolygon () 함수를 사용할 수 있습니다.

  • 다각형의 정점 좌표는 이미지의 좌표계에 따라 정의됩니다. 좌표의 원점 (0, 0)은 이미지의 왼쪽 상단에 위치하고 x 좌표는 오른쪽으로 증가하고 Y 좌표는 하단으로 증가합니다.

고급 응용 프로그램 : 그라디언트 색상을 추가하십시오

그라디언트 효과가있는 다각형을 원한다면 그라디언트의 색상 값을 계산하여 수행 할 수 있습니다. 예를 들어, 다각형의 각 정점에 대해 다른 색상을 지정하여 화려한 그래픽을 만들 수 있습니다.

요약

ImagePolygon () 함수는 PHP에서 매우 실용적인 기능으로 다양한 간단한 다각형 그림을 그리는 데 적합합니다. 정점 좌표를 조정하면 다양한 모양의 패턴을 쉽게 만들 수 있습니다. PHP의 GD 이미지 라이브러리와 결합하여 개발자는보다 복잡한 이미지 처리 기능을 구현할 수 있습니다. 이미지 효과를 더욱 향상 시키려면 그라디언트 추가, 다각형 채우기, 원 그리기 등과 같은 다른 GD 기능과 함께 이미지 효과를 사용해 볼 수 있습니다.