묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
이미지 변경해서 저장을 할려고 하는데 잘 안 되네요.
2005.07.11 14:48
제가 초보라서 어떻게 하는지 잘 모르겟어요...ㅠ.ㅠ
이미지를 변경 해서 저장을 하고 싶은데..
아무리 이것 저것 해 봐도 잘 안 되요...
도무지 뭐가 잘 못 되어서 그러는지 모르겟네요...ㅠ.ㅠ
소스는
<?
$folder0="../$dir/"; // 원본이미지 저장될 폴더 이름
$folder1="../$dir/img_data"; // SMALL_size image 저장될 폴더 이름
$folder2="../$dir/img_data_L"; // BIG_size image 저장될 폴더 이름
for($i=0; $i<count($AttFile); $i++) {
$exp=strrchr($AttFile_name[$i], '.'); // 확장자 추출
$name=sprintf("%04d", $i+1); // 0001 부터 파일이름을 주도록 한다.
$maxX=400; // 가로 최대 100
$maxY=500; // 세로 최대 80
//$s_sizeX=800; //섬네일 이미지 큰변의 크기
$file0=$folder0."/"."ca_".$name.".jpg";
$file1=$folder1."/"."ca_".$name.".jpg";
$file2=$folder2."/"."ca_".$name.".jpg";
$img_pnm = $folder2."/".$name.".pnm";
@copy($AttFile[$i],"$file0");
@copy($AttFile[$i],"$file1");
@copy($AttFile[$i],"$file2");
// 입력된 이미지의 큰변을 찾아 큰변을 지정된 크기 ($s_size=100) 로 변환한다.
$orgSize = getimagesize($AttFile[$i]);
if ($orgSize[0] > $orgSize[1]) {
$smallX = $maxX;
$smallY = intval(($orgSize[1] * $maxX) / $orgSize[0]); }
else {
$smallY = $maxY;
$smallX = intval(($orgSize[0] * $maxY) / $orgSize[1]); }
// jpg 형식의 파일일경우 pnm 형식 파일로 변환
if($exp == '.jpg') {
exec("djpeg -pnm $file1 > $img_pnm"); }
// gif 형식의 파일일경우 pnm 형식 파일로 변환
else if($exp == '.gif') {
exec("giftopnm $file1 > $img_pnm"); }
//@unlink($file2);
// pnm 형식으로 변환된 파일을 지정된크기의 섬네일 이미지(jpg형식)로 변환
exec("pnmscale -xsize {$smallX} $img_pnm | cjpeg -quality 100 -outfile photos/$name.jpg");
exec("pnmscale -ysize {$smallY} $img_pnm | cjpeg -quality 100 -outfile photos/$name.jpg");
@unlink($img_pnm);
@unlink($AttFile[$i]);
}
?>
이 부분에서요..
이미지를 원본, 작은 사이즈, 큰 사이즈로 나누어서 저장을 할려고요..
어케 하는지 모르겠어요...ㅠㅠ
아무리 여기저기 찾아 봐도 도무지 ..뭐가 뭔지..ㅠ.ㅠ
이미지를 변경 해서 저장을 하고 싶은데..
아무리 이것 저것 해 봐도 잘 안 되요...
도무지 뭐가 잘 못 되어서 그러는지 모르겟네요...ㅠ.ㅠ
소스는
<?
$folder0="../$dir/"; // 원본이미지 저장될 폴더 이름
$folder1="../$dir/img_data"; // SMALL_size image 저장될 폴더 이름
$folder2="../$dir/img_data_L"; // BIG_size image 저장될 폴더 이름
for($i=0; $i<count($AttFile); $i++) {
$exp=strrchr($AttFile_name[$i], '.'); // 확장자 추출
$name=sprintf("%04d", $i+1); // 0001 부터 파일이름을 주도록 한다.
$maxX=400; // 가로 최대 100
$maxY=500; // 세로 최대 80
//$s_sizeX=800; //섬네일 이미지 큰변의 크기
$file0=$folder0."/"."ca_".$name.".jpg";
$file1=$folder1."/"."ca_".$name.".jpg";
$file2=$folder2."/"."ca_".$name.".jpg";
$img_pnm = $folder2."/".$name.".pnm";
@copy($AttFile[$i],"$file0");
@copy($AttFile[$i],"$file1");
@copy($AttFile[$i],"$file2");
// 입력된 이미지의 큰변을 찾아 큰변을 지정된 크기 ($s_size=100) 로 변환한다.
$orgSize = getimagesize($AttFile[$i]);
if ($orgSize[0] > $orgSize[1]) {
$smallX = $maxX;
$smallY = intval(($orgSize[1] * $maxX) / $orgSize[0]); }
else {
$smallY = $maxY;
$smallX = intval(($orgSize[0] * $maxY) / $orgSize[1]); }
// jpg 형식의 파일일경우 pnm 형식 파일로 변환
if($exp == '.jpg') {
exec("djpeg -pnm $file1 > $img_pnm"); }
// gif 형식의 파일일경우 pnm 형식 파일로 변환
else if($exp == '.gif') {
exec("giftopnm $file1 > $img_pnm"); }
//@unlink($file2);
// pnm 형식으로 변환된 파일을 지정된크기의 섬네일 이미지(jpg형식)로 변환
exec("pnmscale -xsize {$smallX} $img_pnm | cjpeg -quality 100 -outfile photos/$name.jpg");
exec("pnmscale -ysize {$smallY} $img_pnm | cjpeg -quality 100 -outfile photos/$name.jpg");
@unlink($img_pnm);
@unlink($AttFile[$i]);
}
?>
이 부분에서요..
이미지를 원본, 작은 사이즈, 큰 사이즈로 나누어서 저장을 할려고요..
어케 하는지 모르겠어요...ㅠㅠ
아무리 여기저기 찾아 봐도 도무지 ..뭐가 뭔지..ㅠ.ㅠ