현재 위치: > 최신 기사 목록> 이미지를 통해 이미지를 JPEG 형식으로 회전하고 출력하는 방법은 무엇입니까?

이미지를 통해 이미지를 JPEG 형식으로 회전하고 출력하는 방법은 무엇입니까?

gitbox 2025-09-03

PHP에서 이미지 처리는 일반적인 작업입니다. GD 라이브러리의 이미지 로테이트 함수를 사용하면 이미지를 쉽게 회전 할 수 있습니다. 이 기능은 특히 사용자가 업로드 한 이미지를 처리 ​​할 때 매우 유용합니다. 이미지를 회전시키고 JPEG 형식으로 출력하려면이 기사에서 구현 방법을 자세히 설명합니다.

1. 이미 레로 테이트 기능은 무엇입니까?

Imagerotate 는 PHP의 GD 라이브러리에서 제공하는 기능으로 이미지를 회전시킬 수 있습니다. 회전 된 이미지는 지정된 각도를 기반으로하며 빈 영역은 지정된 배경색으로 채울 수 있습니다.

Imagerotate 의 기본 구문 :

 <span><span><span class="hljs-title function_ invoke__">imagerotate</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>, </span><span><span class="hljs-variable">$angle</span></span><span>, </span><span><span class="hljs-variable">$bgColor</span></span><span>);
</span></span>
  • $ IMAGE : 일반적으로 imageCreatefrom에서 생성 된 이미지 리소스 ... 시리즈 함수 (예 : imageCreatefromjpeg , imageCreatefrommpng 등).

  • $ 각도 : 회전 각도는 단위입니다. 양수 값은 시계 방향 회전을 나타내고, 음수 값은 반 시계 방향 회전을 나타냅니다.

  • $ BGCOLOR : 회전 된 빈 영역의 배경색, 일반적으로 ImageColorAllocate 기능에 의해 생성 된 컬러 리소스.

2. 사진을 회전시키고 JPEG 형식으로 출력합니다.

다음으로 PHP를 통해 이미지를 JPEG 형식으로 회전하고 저장하는 방법의 특정 단계를 보여줍니다. example.jpg 라는 이미지 파일을 처리한다고 가정 해 봅시다.

1 단계 : 이미지를로드하십시오

먼저 회전 해야하는 이미지를로드해야합니다. 여기서는 imageCreateFromjPeg 함수를 사용하여 이미지를 JPEG 형식으로로드합니다.

 <span><span><span class="hljs-variable">$image</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecreatefromjpeg</span></span><span>(</span><span><span class="hljs-string">'example.jpg'</span></span><span>);
</span></span>

2 단계 : 이미지를 회전시킵니다

다음으로 ImageRotate를 통해 이미지를 회전시킵니다. 이미지가 시계 방향으로 90도 회전하고 배경색이 흰색이라고 가정합니다.

 <span><span><span class="hljs-variable">$rotatedImage</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagerotate</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>, </span><span><span class="hljs-number">90</span></span><span>, </span><span><span class="hljs-number">0xFFFFFF</span></span><span>);  </span><span><span class="hljs-comment">// 흰색 배경</span></span><span>
</span></span>

여기서 우리는 회전 각도 90도를 지정하고 배경색은 흰색입니다 ( 0xffffff는 흰색의 16 진수 값을 나타냅니다).

3 단계 : 출력 이미지는 JPEG 형식입니다

회전이 완료되면 이미지를 JPEG 형식으로 출력합니다. 이미지 품질을 유지하기 위해 압축 품질을 지정할 수 있습니다 (0에서 100 사이의 정수는 압축이 없음을 의미합니다).

 <span><span><span class="hljs-title function_ invoke__">imagejpeg</span></span><span>(</span><span><span class="hljs-variable">$rotatedImage</span></span><span>, </span><span><span class="hljs-string">'rotated_example.jpg'</span></span><span>, </span><span><span class="hljs-number">90</span></span><span>);  </span><span><span class="hljs-comment">// 90 출력 품질</span></span><span>
</span></span>

4 단계 : 리소스 정리

마지막으로, 우리가 메모리에서 취하는 이미지 리소스를 정리하는 것을 잊지 마십시오.

 <span><span><span class="hljs-title function_ invoke__">imagedestroy</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">imagedestroy</span></span><span>(</span><span><span class="hljs-variable">$rotatedImage</span></span><span>);
</span></span>

3. 코드 예제 완료

위의 코드를 전체 PHP 스크립트에 통합하면 예제는 다음과 같습니다.

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>

</span><span><span class="hljs-comment">// 이미지로드</span></span><span>
</span><span><span class="hljs-variable">$image</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecreatefromjpeg</span></span><span>(</span><span><span class="hljs-string">'example.jpg'</span></span><span>);

</span><span><span class="hljs-comment">// 이미지를 회전하십시오 90 도,배경색은 흰색입니다</span></span><span>
</span><span><span class="hljs-variable">$rotatedImage</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagerotate</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>, </span><span><span class="hljs-number">90</span></span><span>, </span><span><span class="hljs-number">0xFFFFFF</span></span><span>);

</span><span><span class="hljs-comment">// 출력 이미지입니다 JPEG 체재,품질은 90</span></span><span>
</span><span><span class="hljs-title function_ invoke__">imagejpeg</span></span><span>(</span><span><span class="hljs-variable">$rotatedImage</span></span><span>, </span><span><span class="hljs-string">'rotated_example.jpg'</span></span><span>, </span><span><span class="hljs-number">90</span></span><span>);

</span><span><span class="hljs-comment">// 이미지 리소스 정리</span></span><span>
</span><span><span class="hljs-title function_ invoke__">imagedestroy</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">imagedestroy</span></span><span>(</span><span><span class="hljs-variable">$rotatedImage</span></span><span>);

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"이미지가 회전하고 저장되었습니다 rotated_example.jpg"</span></span><span>;

</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

4. 다른 예방 조치

  • 회전 각도 : 회전 각도는 학위 여야합니다. 예를 들어, 90도는 이미지를 1/4 턴으로 시계 방향으로 회전시키는 것이며, 180도는 반전을 회전시키는 것이며, -90도는 시계 반대 방향으로 회전하는 것입니다.

  • 배경색 : 회전 된 이미지가 투명한 영역을 생성하는 경우 Imagerotate는 이러한 영역을 지정된 배경색으로 채 웁니다. ImageColorAllogate 기능을 통해 모든 색상을 정의 할 수 있습니다.

  • 이미지 유형 :이 예에서는 JPEG 형식이 사용되지만 imageCreateFrommpng 또는 imageCreateFromGif 와 같은 함수를 사용하여 다른 형식으로 이미지를 처리 ​​할 수도 있습니다. 회전 작업 자체는 이미지 형식과 무관합니다.

5. 요약

PHP의 이미 레로 테이트 기능을 사용하면 이미지를 쉽게 회전 할 수 있으며 회전 된 이미지는 간단한 코드로 JPEG 형식으로 저장할 수 있습니다. 다른 GD 라이브러리의 기능을 결합하여보다 복잡한 이미지 처리 작업을 구현할 수 있습니다. 이 기사의 예제가 프로젝트에서 이미지 회전을 효과적으로 처리하는 데 도움이되기를 바랍니다.