묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
이미지를 불러 와서 크기를 조절 하고 저장을 하는데 어떤것이 안 되는지 모르겠네요..
2005.07.21 09:41
안녕 하세요..
전 이제 php 초보라서...
갑자기 막히는 부분이 있어 이렇게 염치 없이 글을 남기네요...
제가 하고 싶은게 뭐냐면....
$maxX=400;
$maxY=500;
$src_file="../$ca_dir/ca_0001.jpg";
$tag_file="../$ca_dir/img_data/ca_0001.jpg";
function JPGMakeThum($maxX,$maxY,$src_file,$tag_file) { // 썸네일 만들기
$src_img=ImageCreateFromjpeg($src_file); //원본
$sx=imagesx($src_img);
$sy=imagesy($src_img);
if ($sx>$maxX || $sy>$maxY) { // 이미지 대칭 축소를 위한 계산
if ($sx>$sy) {
$targ_Y=ceil(($sy*$maxX)/$sx);
$targ_X=$maxX;
} else {
$targ_X=ceil(($sx*$maxY)/$sy);
$targ_Y=$maxY;
}
} else {
$targ_Y=$sy;
$targ_X=$sx;
}
$dst_img=ImageCreateTrueColor($targ_X, $targ_Y);//빈이미지를 만들어주고
ImageCopyResized($dst_img,$src_img,0,0,0,0,$targ_X+1,$targ_Y+1,$sx,$sy); //줄여서 그려준다
Imagejpeg($dst_img,$tag_file,80); //화일로 출력
chmod($tag_file,0707); // 파일 퍼미션 변경
ImageDestroy($dst_img);//메모리 비워주기
ImageDestroy($src_img);//메모리 비워주기
}
소스는 이렇거든요..
그런데 위에 보시면 아시다시피 이미지의 크기를 400*500으로 비율를 맞춰서
img_data폴더에 저장을 하고 싶은데...
책을 보고 분석을 해도 안 되고..
인터넷 여기저기 돌아 다녀도 안 보이고...;;
이것저것 해 봐도 안 되네요....
아시는 분은 제발 가르쳐 주셨으면 합니다.
아니면 힌트라도 주셨으면 합니다...
오늘 꼭 해야 하는데...ㅠ.ㅠ;;;
그럼 수고 하시구요..
모두들 더위 조심 하세요
전 이제 php 초보라서...
갑자기 막히는 부분이 있어 이렇게 염치 없이 글을 남기네요...
제가 하고 싶은게 뭐냐면....
$maxX=400;
$maxY=500;
$src_file="../$ca_dir/ca_0001.jpg";
$tag_file="../$ca_dir/img_data/ca_0001.jpg";
function JPGMakeThum($maxX,$maxY,$src_file,$tag_file) { // 썸네일 만들기
$src_img=ImageCreateFromjpeg($src_file); //원본
$sx=imagesx($src_img);
$sy=imagesy($src_img);
if ($sx>$maxX || $sy>$maxY) { // 이미지 대칭 축소를 위한 계산
if ($sx>$sy) {
$targ_Y=ceil(($sy*$maxX)/$sx);
$targ_X=$maxX;
} else {
$targ_X=ceil(($sx*$maxY)/$sy);
$targ_Y=$maxY;
}
} else {
$targ_Y=$sy;
$targ_X=$sx;
}
$dst_img=ImageCreateTrueColor($targ_X, $targ_Y);//빈이미지를 만들어주고
ImageCopyResized($dst_img,$src_img,0,0,0,0,$targ_X+1,$targ_Y+1,$sx,$sy); //줄여서 그려준다
Imagejpeg($dst_img,$tag_file,80); //화일로 출력
chmod($tag_file,0707); // 파일 퍼미션 변경
ImageDestroy($dst_img);//메모리 비워주기
ImageDestroy($src_img);//메모리 비워주기
}
소스는 이렇거든요..
그런데 위에 보시면 아시다시피 이미지의 크기를 400*500으로 비율를 맞춰서
img_data폴더에 저장을 하고 싶은데...
책을 보고 분석을 해도 안 되고..
인터넷 여기저기 돌아 다녀도 안 보이고...;;
이것저것 해 봐도 안 되네요....
아시는 분은 제발 가르쳐 주셨으면 합니다.
아니면 힌트라도 주셨으면 합니다...
오늘 꼭 해야 하는데...ㅠ.ㅠ;;;
그럼 수고 하시구요..
모두들 더위 조심 하세요
{
$src_img = ImageCreateFromJPEG($file);
$img_info = getImageSize($file);
$img_width = $img_info[0];
$img_height = $img_info[1];
$dst_width = 원하는가로사이즈;
$dst_height = 원하는세로사이즈;
$dst_img = imagecreatetruecolor($dst_width, $dst_height);
ImageCopyResized($dst_img, $src_img, 0, 0, 0, 0, $dst_width, $dst_height, $img_width, $img_height);
ImageInterlace($dst_img);
ImageJPEG($dst_img, $save_filename);
ImageDestroy($dst_img);
ImageDestroy($src_img);
}
위소스를 삽입하시구요..
가로세로크기 지정해서 사용하시면 됨니다.
위 소스가 삽입된 페이지에서
thumbs("원래이미지명", "썸네일이미지명");
이렇게 불러주시면 썸네일 이미지가 생성되구요...
<img src='썸네일이미지명'> 하시면 화면에 출력이 되겠습니다.
혹시 안되시면..리플달아주세요^^;