현재 위치: > 최신 기사 목록> 항아리아를 활성화 한 후 이미지 크기가 변경됩니까?

항아리아를 활성화 한 후 이미지 크기가 변경됩니까?

M66 2025-05-27

PHP에서 이미지를 처리 ​​할 때 GD 라이브러리는 일반적으로 다양한 이미지 작업을 수행하는 데 사용됩니다. ImageAntialias () 함수는 GD 라이브러리가 방지 효과를 가능하게하기 위해 제공하는 도구입니다. 안티 앨리어싱은 이미지의 선을 부드럽게하고 들쭉날쭉 한 시각 효과를 피하여 이미지 품질을 향상시킬 수 있습니다. 그렇다면 imageAntialias ()가 활성화 된 후 이미지의 크기가 변경됩니까?

imageAntialias () 함수는 무엇입니까?

imageAntialias () 함수는 다음과 같이 정의됩니다.

 bool imageantialias ( resource $image , bool $enabled )
  • $ 이미지 는 이미지 리소스 핸들입니다

  • $ enabledtrue 인 경우 anti-aliasing이 활성화되고 False 가 닫힙니다.

이 함수는 imageline () , imagePolygon () 등과 같은 기능을 그리기에만 효과적이며, 이는 드로잉 라인의 가장자리를 부드럽게 만들 수 있습니다.

이미지 크기가 변경 되었습니까?

간단한 답변 : 아니요.

imageAntialias ()를 활성화하면 이미지가 그려 질 때만 픽셀 음영 방법에만 영향을 미치고 에지 스무드가 향상되지만 이미지 크기는 변경되지 않습니다. 이미지의 너비와 높이는 여전히 imagesx ()imagesy ()를 호출하여 얻은 픽셀 값입니다.

예를 들어 :

 <?php
// a100x100진정한 색상 이미지
$image = imagecreatetruecolor(100, 100);

// 반 알리 아스를 켭니다
imageantialias($image, true);

// 대각선을 그립니다
$color = imagecolorallocate($image, 255, 0, 0);
imageline($image, 10, 10, 90, 90, $color);

echo "이미지 너비:" . imagesx($image) . "\n";
echo "이미지 높이:" . imagesy($image) . "\n";

// 출력 이미지
header("Content-Type: image/png");
imagepng($image);
imagedestroy($image);
?>

코드를 실행하면 이미지 크기는 여전히 100x100 픽셀이지만 그려진 빨간 선의 가장자리는 더 매끄 럽습니다.

이미지 크기는 언제 변경됩니까?

이미지 크기는 다음과 같은 경우에만 변경됩니다.

  • imageecopyresampled () , imageecopyresampled () 및 기타 기능을 사용하여 스케일링을 사용하십시오

  • 캔버스를 재현하고 너비와 높이를 조정하십시오

  • 외부 이미지를로드 할 때 이미지의 크기가 다른 이미지입니다.

반 알리 아싱은 이미지 크기를 변경하기 위해 작동 범주에 속하지 않습니다.

요약

  • imageAntialias ()는 픽셀의 렌더링에만 영향을 미치고 가장자리를 부드럽게합니다.

  • 이미지의 너비와 높이는 변경되지 않습니다.

  • 이미지 크기를 변경하려면 스케일링과 같은 기능을 사용해야합니다.

합리적으로 반 알리 아싱을 사용함으로써 이미지 라인은 원래 이미지 크기를 변경하지 않으면 서 그래픽을 처리 할 때 일반적인 기술입니다.