[제나플러스] 모바일에서 찍은 사진 업로드시 사진 방향이 돌아갈 때 해결 방법입니다.
페이지 정보
본문
bbs/write_update.php 에서 아래 내용을 찾아 수정해 보시기 바랍니다.
========================
기존
// 업로드가 안된다면 에러메세지 출력하고 죽어버립니다.
$error_code = move_uploaded_file($tmp_file, $dest_file) or die($_FILES['bf_file']['error'][$i]);
위의 문구를 찾으셔서 아래의 소스로 덮어씌우기 하시면 됩니다.
/////////////////////////////////////////////
// 이 부분부터는 세로사진 정상적으로 출력되도록 회전 수정하는 부분
$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]);
}
// 세로사진 처리 끝 //////////////////////////////////////////
========================
기존
// 업로드가 안된다면 에러메세지 출력하고 죽어버립니다.
$error_code = move_uploaded_file($tmp_file, $dest_file) or die($_FILES['bf_file']['error'][$i]);
위의 문구를 찾으셔서 아래의 소스로 덮어씌우기 하시면 됩니다.
/////////////////////////////////////////////
// 이 부분부터는 세로사진 정상적으로 출력되도록 회전 수정하는 부분
$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]);
}
// 세로사진 처리 끝 //////////////////////////////////////////
추천0
관련링크
댓글목록
등록된 댓글이 없습니다.