웹마스터 팁
모바일 이미지 업로드시 세로사진 자동 회전하기
2013.10.17 16:31
모바일EX.. 훌륭한 모듈입니다.
조금 수정해서 아주 잘 사용하고있습니다. ^^
근데, 회전기능이 왜있나했더니 모바일에서 찍은 사진을 업로드할때에 자동으로 인식해서 저장해주는 기능이 없더군요 ㅠㅠ
세로로 찍은 사진을 올리니 자꾸 가로로 누워버려서... 그래서 추가해봤습니다.
이 팁은 기본적으로 모바일EX 모듈을 사용하고, mobileex.controller.php 를 수정하여 사용합니다.
적절한 위치에 다음소스만 추가해주시면됩니당 ^^;
if($is_img == "Y"){ if($ext == "jpg" || $ext == "jpeg"){ $image = imagecreatefromjpeg($file_info['tmp_name']); }else if($ext == "png"){ $image = imagecreatefrompng($file_info['tmp_name']); }else if($ext == "bmp" || $ext == "wbmp"){ $image = imagecreatefromwbmp($file_info['tmp_name']); }else if($ext == "gif"){ $image = imagecreatefromgif($file_info['tmp_name']); } $exif = exif_read_data($file_info['tmp_name']); if(!empty($exif['Orientation'])) { 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; } if($ext == "jpg" || $ext == "jpeg"){ imagejpeg($image,$file_info['tmp_name']); }else if($ext == "png"){ imagepng($image,$file_info['tmp_name']); }else if($ext == "bmp" || $ext == "wbmp"){ imagewbmp($image,$file_info['tmp_name']); }else if($ext == "gif"){ imagegif($image,$file_info['tmp_name']); } } }
우선 모바일EX에서 이미지를 구분하는 $is_img 변수가 생성되는 부분보다 아래쪽에 위치해야하구요,
임시업로드파일 (tmp_name)을 이용하는것이므로..
mkdir과 move file 보단 위쪽에 위치해야합니다. move file 이후에, 업로드된이미지를 검사하여 회전시켜보았는데 속도가 느려 그냥 임시파일로 처리했습니다.
저는 미디어파일을 검사하여 처리하는 조건 안쪽 $direct_download = "Y"; 바로 아래쪽에 넣어서 작업하였습니다.
mobileEX 0.6.1 기준 125번째줄부터네요.
혹시 해두신게있나해서 이래저래 찾아봤지만 없어서 그냥 짰습니다 ㅠㅠ
중복이아니길빌며. (__) 완성 인증샷.
댓글 8
-
푸시아
2013.10.17 20:36
-
socialskyo
2013.10.17 21:58
아..왜 사이즈만 커지면...옆으로 눕나 했더니...이런 일이 있었네요...바로 수정했습니다. 감사합니다~ -
Xiso
2013.10.18 02:07
도움되셨다니 다행입니다^^ -
Xiso
2013.10.18 02:07
도움되셨다니 다행입니다^^ -
Paul
2013.10.18 02:18
정말 이 기능이 필요했었는데... 대단하십니다!!! ^^ 감사합니다~!!!
-
Xiso
2013.10.23 14:11
php manual에 기재된 예제를 간단하게활용해본겁니다. 도움되셨다니 다행입니다. ^^
-
제이디600
2013.11.08 00:30
모바일xe도 쓸수있나요
-
matrix
2014.02.17 00:57
감사합니다.
제목 | 글쓴이 | 날짜 |
---|---|---|
포인트 사용시에도 그룹이 안 떨어지도록 하는 방법 [4] | sejin7940 | 2013.10.18 |
추천인 표시 [11] | socialskyo | 2013.10.17 |
모바일 이미지 업로드시 세로사진 자동 회전하기 [8] | Xiso | 2013.10.17 |
XE 로만든 앱 + 푸쉬기능 구현하기 (안드로이드) [53] | Xiso | 2013.10.16 |
게시판 하단 검색대상의 순서,노출항목 들 제어하는 방법 [1] | sejin7940 | 2013.10.15 |
페이북 좋아요 버튼 애드온 [2] | 똑디 | 2013.10.11 |
게시판에 다른 테이블 값 직접 가져오기 [1] | 똑디 | 2013.10.11 |
javascript template parser for xe (난이도 중급) [1] | 엘카 | 2013.10.09 |
제이쿼리 최신 버전 사용하기 [8] | Lansi | 2013.10.08 |
제이쿼리 datepicker 옵션 변경 | Lansi | 2013.10.07 |
1.7 이상 기본레이아웃, ie9에서 1차메뉴 깨짐 현상... [3] | uoou | 2013.10.07 |
XE 1.7 에서 닉네임 클릭시 홈페이지나 블로그 등이 새창으로 안 뜨는 버그 수정법 [1] | sejin7940 | 2013.10.07 |
[유저용O, 개발자용x]포인트 레벨 아이콘이나 스킨에 사용할 소스가 부족하세요? [1] | socialskyo | 2013.10.05 |
썸네일 생성시 crop 이 상단 기준으로 생성되게 하는 방법 [5] | sejin7940 | 2013.10.04 |
New FAQ Skin 사용 시 DB 에러 수정하기 | 퍼니엑스이 | 2013.10.02 |
htaccess 수정 주소이동하기 [펌] [2] | 오락실주인 | 2013.10.02 |
phpmyadmin [ 일괄변경,부분수정 ] | 오락실주인 | 2013.10.02 |
[주옥시리즈]최신글,인기글 위젯에 댓글수 표기하기 [1] | socialskyo | 2013.10.01 |
레이아웃 동적 변경하기 | Lansi | 2013.09.27 |
XML 쿼리 사용시 null 값일 경우 업데이트가 안 될 때 [1] | Lansi | 2013.09.27 |
와우~!
굳굳 ~~~