썸네일 이미지 만들기
페이지 정보
작성자 JMStudy 작성일13-01-07 15:18 조회9,401회 댓글0건본문
$obj = new thumbImage;
$obj->real_path = "./upload";
$obj->target_path = "./upload";
//$img_exe 이미지확장자명
$obj->imageResize($img_name,$img_exe,100,100);
class thumbImage {
var $real_path = '.';
var $target_path = '.';
#var $add_name = 'thumb_';
var $add_name = '';
var $image_quality = 95;
function imageResize($realImage, $target_ext, $width, $height) {
static $extName;
static $src;
static $thumb;
$target_ext = strtolower($target_ext);
$extName = strtolower( substr( $realImage, -3 ) );
switch($extName) {
case 'peg' :
case 'jpg' :
$src = @ImageCreateFromJPEG($this->real_path . '/' . $realImage);
break;
case 'gif' :
$src = @ImageCreateFromGIF($this->real_path . '/' . $realImage);
break;
case 'png' :
$src = @ImageCreateFromPNG($this->real_path . '/' . $realImage);
break;
default :
echo '이 파일은 변환할 수 없습니다.';
exit;
}
$size = getimagesize($this->real_path . '/' . $realImage);
$rate = $width / $size[0];
$comp_height = (int)($size[1] * $rate);
// 계산된 썸네일 이미지의 높이가 설정된 이미지의 높이보다 작다면
if ($comp_height < $height) $height=$comp_height;
$thumb = ImageCreateTrueColor($width, $height);
ImageCopyResampled($thumb, $src, 0,0,0,0, $width, $height, ImageSX($src), ImageSY($src) );
$realImage = substr($realImage, 0, -3) . $target_ext;
switch($target_ext) {
case 'jpeg' :
case 'jpg' :
@ImageJPEG($thumb, $this->target_path . '/' . $this->add_name . $realImage, $this->image_quality) or die('Writing Error : Check - Directory and Filename.');
break;
case 'gif' :
@ImageGIF($thumb, $this->target_path . '/' . $this->add_name . $realImage, $this->image_quality) or die('Writing Error : Check - Directory and Filename.');
break;
case 'png' :
@ImagePNG($thumb, $this->target_path . '/' . $this->add_name . $realImage, $this->image_quality) or die('Writing Error : Check - Directory and Filename.');
break;
default :
echo '이 확장자는 지원되는 확장자가 아닙니다.';
exit;
}
ImageDestroy($src);
ImageDestroy($thumb);
}
}
$obj->real_path = "./upload";
$obj->target_path = "./upload";
//$img_exe 이미지확장자명
$obj->imageResize($img_name,$img_exe,100,100);
class thumbImage {
var $real_path = '.';
var $target_path = '.';
#var $add_name = 'thumb_';
var $add_name = '';
var $image_quality = 95;
function imageResize($realImage, $target_ext, $width, $height) {
static $extName;
static $src;
static $thumb;
$target_ext = strtolower($target_ext);
$extName = strtolower( substr( $realImage, -3 ) );
switch($extName) {
case 'peg' :
case 'jpg' :
$src = @ImageCreateFromJPEG($this->real_path . '/' . $realImage);
break;
case 'gif' :
$src = @ImageCreateFromGIF($this->real_path . '/' . $realImage);
break;
case 'png' :
$src = @ImageCreateFromPNG($this->real_path . '/' . $realImage);
break;
default :
echo '이 파일은 변환할 수 없습니다.';
exit;
}
$size = getimagesize($this->real_path . '/' . $realImage);
$rate = $width / $size[0];
$comp_height = (int)($size[1] * $rate);
// 계산된 썸네일 이미지의 높이가 설정된 이미지의 높이보다 작다면
if ($comp_height < $height) $height=$comp_height;
$thumb = ImageCreateTrueColor($width, $height);
ImageCopyResampled($thumb, $src, 0,0,0,0, $width, $height, ImageSX($src), ImageSY($src) );
$realImage = substr($realImage, 0, -3) . $target_ext;
switch($target_ext) {
case 'jpeg' :
case 'jpg' :
@ImageJPEG($thumb, $this->target_path . '/' . $this->add_name . $realImage, $this->image_quality) or die('Writing Error : Check - Directory and Filename.');
break;
case 'gif' :
@ImageGIF($thumb, $this->target_path . '/' . $this->add_name . $realImage, $this->image_quality) or die('Writing Error : Check - Directory and Filename.');
break;
case 'png' :
@ImagePNG($thumb, $this->target_path . '/' . $this->add_name . $realImage, $this->image_quality) or die('Writing Error : Check - Directory and Filename.');
break;
default :
echo '이 확장자는 지원되는 확장자가 아닙니다.';
exit;
}
ImageDestroy($src);
ImageDestroy($thumb);
}
}
댓글목록
등록된 댓글이 없습니다.