다른분의 문의로 우연찮게 카르마님의 이미지 프로세스 모듈을 사용해 보고 있습니다. 기능 중에는 아이폰 등에서 찍은 사진이 세로로 회전되어 있을때 바로 잡아주는 기능이 있는데요. 그런데 이 기능을 사용해도 세로로 보이는 방향을 바로 잡아주지 않더라고요.
그래서 관련 코드를 들여다봤더니 아래와 같은 설정으로 되어있습니다.
imageprocess.model.php GDrotate()
switch($exif['Orientation']) { case 8: $image = imagerotate($image,90,0); break; case 3: $image = imagerotate($image,180,0); break; case 6: $image = imagerotate($image,-90,0); break; }
제 아이폰에 세로로 찍혀져 있는 사진을 올리면 코드의 디버깅 결과 Orientation 값이 6으로 나옵니다. 그런데 위 코드에서 6은 -90으로 되어 있어요. 이것이 바른 것인지가 궁금합니다. 6으로 되어 있다는 것은 1로 돌려야지 정상적으로 보이기 때문에 각도가 90도나 0도 처리 되어야 할 듯 싶고 실제 -90을 0으로 바꾸니 문제가 해결 되었습니다.
이 문제는 ImageMagick에서는 보이지 않고 오직 GD 사용에서만 나타납니다.