Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP imagerotate() 함수로 이미지를 원하는 각도만큼 회전하는 방법

imagerotate()는 PHP의 GD 라이브러리에 내장된 함수로, 이미지를 지정한 각도(도 단위)만큼 회전시키는 데 사용됩니다. 이미지 편집 기능을 구현할 때 썸네일 회전이나 사진 방향 보정 등에 유용하게 활용할 수 있습니다.

문법(Syntax)

resource imagerotate($image, $angle, $bgd_color, $ignore_transparent = 0)

매개변수(Parameters)

imagerotate() 함수는 다음과 같이 네 개의 매개변수를 받습니다.

  • $image − imagecreatetruecolor() 또는 imagecreatefromjpeg() 같은 함수가 반환한 이미지 리소스입니다. 회전 대상이 되는 이미지를 지정하는 데 사용됩니다.

  • $angle − 회전 각도를 도(degree) 단위로 지정합니다. 이미지는 반시계 방향으로 회전되며, 예를 들어 90을 입력하면 반시계 방향으로 90도 회전합니다.

  • $bgd_color − 이미지를 회전하면 모서리 부분에 빈 공간이 생기는데, 이 노출된 영역을 채울 배경색을 지정합니다.

  • $ignore_transparent − 선택적 매개변수로, 0이 아닌 값을 설정하면 투명 색상이 무시됩니다. 기본값은 0입니다.

반환 값(Return Values)

imagerotate() 함수는 성공 시 회전된 이미지의 리소스를 반환하고, 실패하면 false를 반환합니다.

예제 1: 이미지를 90도 회전하기

<?php
   // 이미지 파일 경로를 변수에 할당
   $image_name = 'C:\xampp\htdocs\test\23.jpg';

   // imagecreatefromjpeg() 함수로 이미지 파일 불러오기
   $image = imagecreatefromjpeg($image_name);

   // imagerotate() 함수로 이미지를 90도 회전
   $img = imagerotate($image, 90, 0);

   // 브라우저에 이미지 출력
   header("Content-type: image/png");
   imagepng($img);
?>

입력 이미지

PHP imagerotate() 함수로 이미지를 원하는 각도만큼 회전하는 방법

출력 이미지

PHP imagerotate() 함수로 이미지를 원하는 각도만큼 회전하는 방법

예제 2: 이미지를 180도 회전하기

<?php
   // 이미지 파일 경로를 변수에 할당
   $image_name = 'C:\xampp\htdocs\test\23.jpg';

   // imagecreatefromjpeg() 함수로 이미지 파일 불러오기
   $image = imagecreatefromjpeg($image_name);

   // imagerotate() 함수로 이미지를 180도 회전
   $img = imagerotate($image, 180, 0);

   // 브라우저에 이미지 출력
   header("Content-type: image/png");
   imagepng($img);
?>

출력 결과

PHP imagerotate() 함수로 이미지를 원하는 각도만큼 회전하는 방법

참고 사항

  • imagerotate() 함수를 사용하려면 서버에 GD 라이브러리가 설치되어 있어야 합니다. phpinfo() 함수로 GD 지원 여부를 확인할 수 있습니다.
  • JPEG 이미지를 불러올 때는 imagecreatefromjpeg(), PNG 이미지라면 imagecreatefrompng() 함수를 사용해야 합니다.
  • 투명 배경이 있는 PNG 이미지를 회전할 경우, 세 번째 매개변수에 적절한 배경색을 지정하지 않으면 빈 영역이 검게 채워질 수 있으니 주의하세요.