From ef709c75ebe6a1fca8be4049e6a55b1e9e8156c6 Mon Sep 17 00:00:00 2001 From: chicpro Date: Tue, 10 Dec 2013 09:55:35 +0900 Subject: [PATCH] =?UTF-8?q?=EC=8D=B8=EB=84=A4=EC=9D=BC=20=EC=83=9D?= =?UTF-8?q?=EC=84=B1=EC=8B=9C=20exif=5Fread=5Fdata=20=ED=95=A8=EC=88=98?= =?UTF-8?q?=EC=97=86=EC=9D=84=20=EB=95=8C=20=EC=98=88=EC=99=B8=EC=B2=98?= =?UTF-8?q?=EB=A6=AC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/thumbnail.lib.php | 49 +++++++++++++++++++++++-------------------- 1 file changed, 26 insertions(+), 23 deletions(-) diff --git a/lib/thumbnail.lib.php b/lib/thumbnail.lib.php index 3b4b97fd9..ceb3e4579 100644 --- a/lib/thumbnail.lib.php +++ b/lib/thumbnail.lib.php @@ -108,7 +108,7 @@ function get_view_thumbnail($contents, $thumb_width=0) continue; // jpg 이면 exif 체크 - if($size[2] == 2) { + if($size[2] == 2 && function_exists('exif_read_data')) { $degree = 0; $exif = @exif_read_data($srcfile); if(!empty($exif['Orientation'])) { @@ -218,30 +218,33 @@ function thumbnail($filename, $source_path, $target_path, $thumb_width, $thumb_h $src = imagecreatefromgif($source_file); } else if ($size[2] == 2) { $src = imagecreatefromjpeg($source_file); - // exif 정보를 기준으로 회전각도 구함 - $exif = @exif_read_data($source_file); - if(!empty($exif['Orientation'])) { - switch($exif['Orientation']) { - case 8: - $degree = 90; - break; - case 3: - $degree = 180; - break; - case 6: - $degree = -90; - break; - } - // 회전각도 있으면 이미지 회전 - if($degree) { - $src = imagerotate($src, $degree, 0); + if(function_exists('exif_read_data')) { + // exif 정보를 기준으로 회전각도 구함 + $exif = @exif_read_data($source_file); + if(!empty($exif['Orientation'])) { + switch($exif['Orientation']) { + case 8: + $degree = 90; + break; + case 3: + $degree = 180; + break; + case 6: + $degree = -90; + break; + } - // 세로사진의 경우 가로, 세로 값 바꿈 - if($degree == 90 || $degree == -90) { - $tmp = $size; - $size[0] = $tmp[1]; - $size[1] = $tmp[0]; + // 회전각도 있으면 이미지 회전 + if($degree) { + $src = imagerotate($src, $degree, 0); + + // 세로사진의 경우 가로, 세로 값 바꿈 + if($degree == 90 || $degree == -90) { + $tmp = $size; + $size[0] = $tmp[1]; + $size[1] = $tmp[0]; + } } } }