>백엔드 개발 >PHP 튜토리얼 >PHP 이미지 처리 이미지 회전 및 이미지 뒤집기 example_php 기술

PHP 이미지 처리 이미지 회전 및 이미지 뒤집기 example_php 기술

WBOY
WBOY원래의
2016-05-16 20:31:111105검색

그림 회전과 뒤집기는 웹 프로젝트에서 흔히 사용되는 기능이지만 두 가지 다른 개념입니다. 그림 회전은 특정 각도에 따라 그림을 회전하는 것이고, 그림 뒤집기는 특정 각도에 따라 그림의 내용을 변경하는 것입니다. 각도. 방향을 반대로 합니다. 이미지 뒤집기를 구현하려면 자신만의 함수를 작성해야 하지만, 이미지 회전은 GD 라이브러리에 제공되는 imagerotate() 함수를 사용하여 직접 수행할 수 있습니다. 이 함수의 프로토타입은 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.

리소스 이미지 회전(리소스 src_im, 부동 각도, int bgd_color [,intignore_transpatrent])

이 함수는 src_im 이미지를 주어진 각도로 회전시킬 수 있습니다. bgd_color는 회전 후 덮이지 않는 부분의 색상을 지정합니다. 회전 중심은 이미지의 중심이며, 회전된 이미지는 대상 이미지에 맞게 축소됩니다(가장자리는 잘리지 않음). ignore_transpatrent가 0이 아닌 값으로 설정되면 투명 색상이 무시됩니다(그렇지 않으면 유지됩니다). JPEG 형식의 사진을 예로 들면, 사진을 회전할 수 있는 함수rotate()를 선언합니다. 코드는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.

//Jpeg 이미지 형식을 예로 들어 주어진 각도로 이미지를 회전합니다
함수 회전($filename,$degrees){
​​​​//Jpeg 형식을 예로 들어 이미지 리소스를 생성합니다
          $source = imagecreatefromjpeg($filename);
​​​​ //imagerotate() 함수를 사용하여 지정한 각도에 따라 회전합니다
         $rotate = imagerotate($source, $degrees, 0);
​​​​ //회전된 이미지 저장
         $imagejpeg($rotate,$filename);
}

//이미지 brophp.jpg 180도 회전
회전("brophp", 180);
?>

이미지 뒤집기 각도는 지정할 수 없습니다. Y축을 따라 수평으로 뒤집거나 X축을 따라 수직으로 뒤집는 두 가지 방향만 설정할 수 있습니다. Y축을 따라 뒤집으면 원본 이미지가 한 픽셀 너비만큼 오른쪽에서 왼쪽(또는 오른쪽에서 오른쪽)으로 복사되고, 이미지 자체의 높이에 있는 새 리소스에 복사됩니다. 이미지가 Y축을 따라 뒤집혔습니다. JPEG 형식 이미지를 예로 들면, Y축을 따라 뒤집을 수 있는 이미지 함수 Turn_y()를 선언합니다.

코드 복사 코드는 다음과 같습니다.

함수 trun_y($filename){
         $back = imagecreatefromjpeg($filename);

          $width = 이미지x($back)
         $height = 이미지($back);

​​​​//Y축을 따라 뒤집힌 이미지를 저장하기 위해 새 이미지 리소스를 생성합니다
          $new = imagecreatetruecolor($width, $height);
//y축을 따라 뒤집는 것은 원본 이미지를 오른쪽에서 왼쪽으로 한 픽셀씩 새 리소스에 복사하는 것입니다
for($x=0 ;$x<$width; $x ){
                     //그림의 높이를 하나씩 복사하여 급여 리소스에 그림의 1픽셀 너비를 추가합니다
Imagecopy($new, $back, $width-$x-1, 0, $x, 0, 1, $height);
       }

            //뒤집힌 사진 저장
Imagejpeg($new,$filename);
이미지 파괴($back);
이미지 파괴($new);
}

trun_y("brophp.jpg")
?>

이 예시에서 선언된 Turn_y() 함수에는 처리할 이미지 URL인 하나의 매개변수만 필요합니다. 이 예에서는 Y축을 따라 그림을 뒤집기 위해 Turn_y() 함수를 호출합니다. X축을 따라 뒤집으면 원본 이미지가 위에서 아래로(또는 아래에서 위로) 회전됩니다.

코드 복사 코드는 다음과 같습니다.

함수 trun_x($filename){
         $back = imagecreatefromjpeg($filename);

          $width = 이미지x($back)
         $height = 이미지($back);

​​​​//Y축을 따라 뒤집힌 이미지를 저장하기 위해 새 이미지 리소스를 생성합니다
          $new = imagecreatetruecolor($width, $height);
//y축을 따라 뒤집는 것은 원본 이미지를 오른쪽에서 왼쪽으로 한 픽셀씩 새 리소스에 복사하는 것입니다
for($y=0 ;$y<$height; $y ){
                     //그림의 높이를 하나씩 복사하여 급여 리소스에 그림의 1픽셀 너비를 추가합니다
Imagecopy($new, $back,0, $height-$y-1, 0, $y, $width,1);
       }

            //뒤집힌 사진 저장
Imagejpeg($new,$filename);
이미지 파괴($back);
이미지 파괴($new);
}

trun_x("brophp.jpg")
?>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.