사진게시판 썸네일 방향 질문드립니다.
본문
게시글을 올릴땐 정방향으로해서 올리는데 게시물을 올리면 저렇게 사진 방향이 돌아갑니다.
혹시 해결할 수 있는 방법 없을까요?
답변 2
/bbs/write_update.php 파일을 열어,
대략 582번 쯤에 있는,
// 업로드가 안된다면 에러메세지 출력하고 죽어버립니다.
$error_code = move_uploaded_file($tmp_file, $dest_file) or die($_FILES['bf_file']['error'][$i]);
이 부분을 아래와 같이 변경하면 위아래 구분을 할 겁니다.
(그누4에서 작업했던 내용인데, 그누 5에도 그냥 될 듯 하군요.)
// 이 부분부터는 세로사진 정상적으로 출력되도록 회전 수정하는 부분
$exifData = exif_read_data($tmp_file);
if($exifData['Orientation'] == 6) {
// 시계방향으로 90도 돌려줘야 정상인데 270도 돌려야 정상적으로 출력됨
$degree = 270;
}
else if($exifData['Orientation'] == 8) {
// 반시계방향으로 90도 돌려줘야 정상
$degree = 90;
}
else if($exifData['Orientation'] == 3) {
$degree = 180;
}
if($degree) {
if($exifData[FileType] == 1) {
$source = imagecreatefromgif($tmp_file);
$source = imagerotate ($source , $degree, 0);
imagegif($source, $dest_file);
}
else if($exifData[FileType] == 2) {
$source = imagecreatefromjpeg($tmp_file);
$source = imagerotate ($source , $degree, 0);
imagejpeg($source, $dest_file);
}
else if($exifData[FileType] == 3) {
$source = imagecreatefrompng($tmp_file);
$source = imagerotate ($source , $degree, 0);
imagepng($source, $dest_file);
}
imagedestroy($source);
}
else {
// 업로드가 안된다면 에러메세지 출력하고 죽어버립니다.
$error_code = move_uploaded_file($tmp_file, $dest_file) or die($_FILES['bf_file']['error'][$i]);
}
사진의 EXIF 데이터를 읽어 그에 맞게 사징을 회전 시켜 저장하게 해야 하지요..^^
예전에 작업한게 있으니, 찾아보고 다시 와야겠군요.
답변을 작성하시기 전에 로그인 해주세요.