워터마크이용시 용량이 늘어나나요? > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

워터마크이용시 용량이 늘어나나요? 정보

워터마크이용시 용량이 늘어나나요?

본문

안녕하세요^^


사진에 워터마크를 적용할 경우 업로드된 파일외에

워터마크가 적용된 사진도 동시에 저장되는 건가요?


즉, 서버에 2장의 사진(원본 및 워터마크적용사진)이 저장되는것인지요??


답변 꼭 부탁드립니다~~








워터마크 소스는 아래와 같습니다..





$wmFile = $g4[path]."/img/Watermark.gif"; // 워터마크 이미지 주소

$data_path = $g4[path]."/data/file/$bo_table";
$thumb_path = $data_path.'/thumb';

$sql2=" select * from $g4[board_file_table] where  bo_table = '$bo_table' and wr_id = '$wr_id' order by bf_no asc";
$results2 = sql_query($sql2);
for ($d=0; $row2=sql_fetch_array($results2); $d++)  {

if ($_FILES[bf_file][name][$d])
{
$file = $data_path .'/'. $row2[bf_file];
if (preg_match("/\.(jp[e]?g|gif|png)$/i", $file))
{
$size = getimagesize($file);
if ($size[2] == 1)
$src = imagecreatefromgif($file);
else if ($size[2] == 2)
$src = imagecreatefromjpeg($file);
else if ($size[2] == 3)
$src = imagecreatefrompng($file);
else
break;

$rate = $board[bo_image_width] / $size[0]; // 리사이즈를 원치않으면 여기서부터~~~
$height = (int)($size[1] * $rate);

if ($size[0] > $board[bo_image_width]){

@unlink($data_path.'/'.$row2[bf_file]);
$dst = imagecreatetruecolor($board[bo_image_width], $height);
imagecopyresampled($dst, $src, 0, 0, 0, 0, $board[bo_image_width], $height, $size[0], $size[1]);
//imagejpeg($dst, $data_path.'/'.$row2[bf_file], $board[bo_2]); //혹 업로드 이미지 깨지면 여긴 주석처리하시고 바로 아래 껄 이용하세요..
imagepng($dst, $data_path.'/'.$row2[bf_file], $board[bo_2]); //주석 해제
chmod($data_path.'/'.$row2[bf_file], 0606);

$temp = @getimagesize(addslashes($file));

}
// 리사이즈를 원치않으면 여기까지 삭제 & 주석처리하면 됨.


$wmImg  = imageCreateFromGIF($wmFile);
$size = getimagesize($file);
if ($size[2] == 1)
$jpegImg = imagecreatefromgif($file);
else if ($size[2] == 2)
$jpegImg = imagecreatefromjpeg($file);
else if ($size[2] == 3)
$jpegImg = imagecreatefrompng($file);
else
break;

$wmX=imageSX($jpegImg) - imageSX($wmImg);
$wmY=imageSY($jpegImg) - imageSY($wmImg);
imageCopyMerge($jpegImg, $wmImg, $wmX, $wmY, 0, 0, imageSX($wmImg), imageSY($wmImg), 90);
ImageJPEG($jpegImg, $file, 90);
}
}
}


// 에디터에서 이미지 경로 추출 시작
$s = $wr_content;
$img_file = Array();
while($s) {
$pos = strpos($s, "/data/cheditor");
$s = substr($s, $pos, strlen($s));
$pos = strpos($s, '"');

$file_path = substr($s, 0, $pos);
if (!$file_path) break;

$img_file[] = $g4[path].substr($file_path,0,-1);

$s = substr($s, $pos, strlen($s));
}
// 에디터에서 이미지 경로 추출 끝

// 에디터이미지 워터마크 작업 시작
for($i=0;$i<count($img_file);$i++){
$wmImg  = imageCreateFromGIF($wmFile);
$size = getimagesize($img_file[$i]);
if ($size[2] == 1)
$jpegImg = imagecreatefromgif($img_file[$i]);
else if ($size[2] == 2)
$jpegImg = imagecreatefromjpeg($img_file[$i]);
else if ($size[2] == 3)
$jpegImg = imagecreatefrompng($img_file[$i]);
else
break;

$wmX=imageSX($jpegImg) - imageSX($wmImg);
$wmY=imageSY($jpegImg) - imageSY($wmImg);
imageCopyMerge($jpegImg, $wmImg, $wmX, $wmY, 0, 0, imageSX($wmImg), imageSY($wmImg), 90);
ImageJPEG($jpegImg, $img_file[$i], 90);
}
// 에디터이미지 워터마크 작업 끝

댓글 전체

전체 66,558 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT