웹마스터 팁
모바일 사진 자동 회전 적용방법
2014.02.11 13:12
mobileex 에서만 되는 방법만 있어,
제가 한 방법을 적어봅니다.
저는 imageprocess module 에 image rotate 기능을 추가해서, 이미지 압축 처리할때, image orientation 정보를 이용해서
자동으로 회전하는 부분을 처리하였습니다.
if($file){ if($ext == "jpg" || $ext == "jpeg"){ $image = imagecreatefromjpeg($file); }else if($ext == "png"){ $image = imagecreatefrompng($file); } else if($ext == "bmp" || $ext == "wbmp"){ $image = imagecreatefromwbmp($file); }else if($ext == "gif"){ $image = imagecreatefromgif($file); } $exif = exif_read_data($file); if(!empty($exif['Orientation'])) { switch($exif['Orientation']) { case 8: $image = imagerotate($image,270,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); } else if($ext == "png"){ imagepng($image,$file); }else if($ext == "bmp" || $ext == "wbmp"){ imagewbmp($image,$file); }else if($ext == "gif"){ imagegif($image,$file); } } }
위에 코드를 imageprocess.controller.php 파일에
$ext = strtolower(substr(strrchr($args->source_filename,'.'),1));
소스 다음에 추가하시면, image orientation 되어 있는 파일이 자동으로 회전되어 올라가게 됩니다.
테스트 mobile 은 갤럭시s3, g2 기종으로 찍은 사진으로 해봤네요..
imageprocess module 설치되어 있으면, 기존 xe board 에서 pc / mobile 지원이 됩니다.
댓글 8
-
몽실아빠
2014.02.11 13:23
-
몽실아빠
2014.02.11 22:10
돌려진 사진의 경우 회전을 시켜주는 것 같은데 리사이즈 및 워터마크처리 작업을 하지 않는듯 합니다. 호스팅 이용을 하다보니 리사이즈가 안되면 곤란해서요.
-
더뿌
2014.02.11 23:09
저는 리사이즈는 정상적으로 작동하고 있습니다 워터마크는 써보지않아서 모르겠습니다만 다만 exif 정보가 유실되는문제는 있는거 같네요 -
몽실아빠
2014.02.11 23:32
네. 회원 한분의 게시물 중 한장이 이미지프로세서모듈에서 리사이즈와 워터마크작업이 안된채 업로드가 되어 있었습니다. 정상처리된 사진이 있고 또 추가로 처리되지 않은 원본사진이 있었던 것으로 보입니다.
여러사진 중 하나의 사진이 이미지프로세서작업이 되지 않은 원본사진 하나가 추가로 업로드 되는 듯한 상황으로 판단이 됩니다.
일단 조금더 모니터링 해 보고 다시 말씀드릴게요.
-
더뿌
2014.02.11 23:36
해당 코드를
//여기부터 리사이즈 부분 이전에 넣으면
file 회전 후 리사이즈, 워터마크가 삽입되네요..
exif 정보는 유실되는건 어쩔 수 없는 듯 하네요..
-
몽실아빠
2014.02.12 09:01
네. 코드위치 이동해 보고 모니터링 해 볼게요~~~ 감사합니다.
-
몽실아빠
2014.02.12 21:49
랜덤하게 리사이즈 및 워터마크 작업이 누락되는 사진이 생기네요.
-
Omega3
2014.02.17 18:40
이런 정보 아주 좋아요! :)
제목 | 글쓴이 | 날짜 |
---|---|---|
게시판 스킨 분석 [2] | 이온디 | 2014.01.28 |
회원도 모듈별 적용된 포인트 보게하는 방법. [11] | :DunhillBoy | 2014.02.01 |
1.5 -> 1.7 업글중 백지상태 부분!! | una_nampyeon | 2014.02.03 |
ux를 편리하게 하기 위한 css 팁 | 두랄루민 | 2014.02.03 |
[XE 1.7] 스팸필터 설정이 안되는 경우 해결 방법 [3] | 퍼니엑스이 | 2014.02.03 |
모바일레이아웃을 사용하되 모바일 게시판 스킨을 선택하지 않고 일반 게시판 스킨을 사용하는 방법 [4] | sejin7940 | 2014.02.04 |
관리자화면 상단의 업데이트 해야할 항목 안내문구 안 나오게 하는 방법 [1] | sejin7940 | 2014.02.04 |
[도로명주소 krzip] 1.7.4 이전 버전들에 이용하기 [3] | XE플스 | 2014.02.06 |
XE 1.7.4 새로운 우편번호 체계에서 나머지주소 관련 사용실수 방지방법입니다 [1] | sejin7940 | 2014.02.07 |
통합검색할때 회원별 권한에 따라 내용 보여주기 | garnecia | 2014.02.07 |
1.7.4 업데이트후 글쓰기 에러가 나신다면... [2] | 맞장 | 2014.02.07 |
누리고쇼핑몰에서 구주소에 새주소적용하기 [14] | garnecia | 2014.02.08 |
1.7.4 - 페이지나 게시판 생성 후 설정화면에 가면 '사이트기본스킨사용' 이 적용되지 않는 버그 해결법 | sejin7940 | 2014.02.08 |
스윙브라우저 유저분들 필독. [10] | KSG2013 | 2014.02.08 |
XE를 사용중 백지현상이 있을경우 체크해볼 요소 [2] | jambox | 2014.02.08 |
그룹아이콘 모바일에서 표시하기 | 잉카러부 | 2014.02.09 |
중복레코드 검색 및 삭제 | ByteCMC | 2014.02.10 |
웹뷰 개발시geocode(구글)활용법 | 웹빌드 | 2014.02.10 |
모바일 사진 자동 회전 적용방법 [8] | 더뿌 | 2014.02.11 |
마우스드래그금지 | 레치에스 | 2014.02.11 |
오호~~ 모바일을 스케치북5 스킨으로 다시 바뀐뒤 고민이 사진 방향 인식 문제였는데 적용해 보겠습니다!