PHP에서 이미지로 작업 할 때는 종종 다양한 모양을 그려야합니다. 다각형을 그리기 위해서는 ImageOpenPolygon () 과 Imageline () 은 두 가지 매우 실용적인 기능입니다. 이 기사는 다각형 테두리를 그리며 완전한 예를 제시하기 위해 함께 사용하는 방법을 자세히 설명합니다.
ImageOpenPolygon () 함수는 열린 다각형 경로를 그리는 데 사용됩니다. 즉, 각 정점을 연결하는 선을 그립니다. 그러나 마지막 가장자리를 자동으로 닫지는 않습니다 .
Imageline ()은 다각형을 수동으로 닫는 데 사용될 수있는 두 지점 사이에 직선을 그릴 수 있습니다.
완전히 닫힌 다각형 테두리를 그려야하는 경우 ImageOpenPolygon ()을 사용한 다음 ImageLine ()을 사용하여 시작점과 종말점을 연결해야합니다.
다음은 PHP GD 라이브러리를 사용하여 오각형 테두리를 그리는 예입니다.
<?php
// 캔버스를 만듭니다
$width = 400;
$height = 400;
$image = imagecreatetruecolor($width, $height);
// 색상을 할당합니다
$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);
// 배경을 채우십시오
imagefill($image, 0, 0, $white);
// 국방부의 정점을 정의하십시오
$points = [
200, 50, // 꼭지점1
350, 150, // 꼭지점2
300, 300, // 꼭지점3
100, 300, // 꼭지점4
50, 150 // 꼭지점5
];
// 열린 다각형을 그립니다
imageopenpolygon($image, $points, 5, $black);
// 사용 imageline 마지막 가장자리를 수동으로 닫습니다(꼭지점5回到꼭지점1)
imageline($image, $points[8], $points[9], $points[0], $points[1], $black);
// 출력 이미지
header('Content-Type: image/png');
imagepng($image);
// 자원을 자유롭게합니다
imagedestroy($image);
?>
ImageOpenPolygon ()은 정점 1에서 vertex 5로 라인 세그먼트를 그립니다. 그러나 vertex 5를 vertex 1에 다시 연결하지는 않습니다.
Imageline () ()는 정점 5에서 vertex 1까지의 선 세그먼트를 수동으로 애니메이션하여 테두리를 성공적으로 닫습니다.
ImageOpenPolygon ()을 사용한 후 Imageline ()을 사용하여 마지막 가장자리를 채우십시오 . 그렇지 않으면 그림이 열립니다.
정점 좌표는 1 차원 배열로 나열되어야하며 각각의 두 숫자는 좌표 세트 (x, y) 입니다.
그리기 전에 GD 라이브러리가 올바르게 설치되어 있는지 확인해야합니다. https://www.m66.net/phpinfo.php를 방문하여 PHP 환경 정보를 확인할 수 있습니다.
ImageOpenPolygon () 과 Imageline ()을 결합함으로써 맞춤형 폐쇄 제어가 필요한 다양한 다각형 그림을 유연하게 그릴 수 있습니다. 이 방법은 복잡한 그래픽을 그리거나 동적으로 차트를 생성 할 때 특히 유용합니다. 빨리 시도해 봅시다!