현재 위치: > 최신 기사 목록> ImageStickness () 함수를 사용하여 ImageOpenPolygon ()으로 더 선명하고 두꺼운 다각형을 그리는 방법?

ImageStickness () 함수를 사용하여 ImageOpenPolygon ()으로 더 선명하고 두꺼운 다각형을 그리는 방법?

M66 2025-07-18

PHP의 GD 라이브러리를 사용하여 그래프를 그리면 ImageOpenPolygon ()은 개방 된 (침착되지 않은) 다각형 라인을 그리는 데 도움이되는 매우 실용적인 기능입니다. 그러나 기본적으로 그려진 선은 더 얇을 수 있으며 시각적 요구가 높은 일부 시나리오에서는 눈길을 끄는 것이 아닙니다.

다각형 선을 두껍고 명확하게 만들려면 ImagesEtthickness () 함수가 편리합니다. 이 기사는이 두 기능을 사용하여 요구에 더 부합하는 다각형 효과를 도출하는 방법을 소개합니다.

기본 소개

  • ImageOpenPolygon (Resource $ image, Array $ Points, int $ num_points, int $ color) : bool

    이 함수는 주어진 포인트 세트에 따라 이미지에 열린 다각형 경로를 그립니다.

  • ImagesTthickness (자원 $ image, int $ 두께) : bool

    이 함수는 직선을 그릴 때 선 두께를 설정하는 데 사용됩니다.

참고 : ImagesTthickness ()는 직선 도면의 전역 두께를 설정하여 모든 후속 선 그리기에 영향을 미칩니다.

실제 사례

다음은 두꺼운 선으로 펜타곤을 그리는 방법을 보여주는 완전한 예입니다.

 <?php
// 캔버스를 만듭니다
$image = imagecreatetruecolor(400, 400);

// 색상을 할당합니다
$white = imagecolorallocate($image, 255, 255, 255);
$blue = imagecolorallocate($image, 0, 0, 255);

// 흰색으로 채워진 배경
imagefill($image, 0, 0, $white);

// 국방부의 정점을 정의하십시오
$points = [
    200, 50,   // 꼭지점1
    300, 150,  // 꼭지점2
    250, 300,  // 꼭지점3
    150, 300,  // 꼭지점4
    100, 150   // 꼭지점5
];

// 선 두께를 설정하십시오
imagesetthickness($image, 5);

// 열린 다각형을 그립니다
imageopenpolygon($image, $points, count($points), $blue);

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

// 리소스를 자유롭게합니다
imagedestroy($image);
?>

위의 예에서는 ImagesEtthickness ($ image, 5); 그려진 다각형이 기본 1 픽셀 라인보다 두껍게하여 선 너비를 5 픽셀로 설정하고 시각적 효과가 크게 향상됩니다.

  • 두께 조정 : 다른 선 세그먼트가 다른 두께 갖기를 원한다면 각 선을 그렸습니다. 그러나 ImageOpenPolygon () 과 같은 배치 드로잉 기능의 경우 균일하게 설정할 수 있습니다.

  • 출력 최적화 : 생성 된 그래픽을 서버에 저장하려면 ImagePng ($ image, '/path/to/save/polygon.png')를 사용할 수 있습니다. 예를 들어 페이지에서 참조하십시오.

 <img src="https://m66.net/path/to/save/polygon.png" alt="두꺼운 선 다각형의 예">
  • 재지를 피하십시오 : 두꺼운 선이 더 매끄럽게 보이게하려면 캔버스를 만들 때 더 큰 크기를 사용할 수 있고 출력을 스케일링하여 간접적으로 안티 아일리 아스를 사용할 수 있습니다.

요약

ImagesEtthickness ()ImageOpenPolygon ()을 결합함으로써, 회로도, 게임 맵, 데이터 시각화 등과 같은 장면을 생성하는 데 매우 유용한 두껍고 눈길을 끄는 다각형을 쉽게 끌어들일 수 있습니다.이 두 가지의 조합을 마스터하면 그래픽 처리에서 유연성과 표현력을 크게 향상시킵니다.