업로드하는 사진에 '워터마크'를... > 그누보드5 팁자료실

그누보드5 팁자료실

업로드하는 사진에 '워터마크'를... 정보

업로드하는 사진에 '워터마크'를...

본문

도끼목수님이 예전에 올린 소스입니다.
http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=23282&sca=&sfl=wr_subject||wr_content&stx=%EC%9B%8C%ED%84%B0%EB%A7%88%ED%81%AC&sop=and


write_update.skin.php ---------------

<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

//워터마크 넣기
//png는 안됨, jpg 원본 사용해야함
//$transparency 워터마크 투명도
//$jpegQuality 화질

if ($mark == 1){ //
function waterMark($fileInHD, $wmFile, $transparency = 90, $jpegQuality = 90) {
 $wmImg  = imageCreateFromGIF($wmFile);
 $jpegImg = imageCreateFromJPEG($fileInHD);
$wmX=imageSX($jpegImg) - imageSX($wmImg);
$wmY=imageSY($jpegImg) - imageSY($wmImg);
 imageCopyMerge($jpegImg, $wmImg, $wmX, $wmY, 0, 0, imageSX($wmImg), imageSY($wmImg), $transparency);
 ImageJPEG($jpegImg, $fileInHD, $jpegQuality);
}

$data_path = G5_PATH."/data/file/$bo_table"; //서버경로임
$thumb_path = $data_path.'/thumb';

    $sql=" select * from $g5[board_file_table] where  bo_table = '$bo_table' and wr_id = '$wr_id' order by bf_no asc";
    $results = sql_query($sql);
    for ($i=0; $row=sql_fetch_array($results); $i++)  {
$file = $data_path .'/'. $row[bf_file];


if ($_FILES[bf_file][name][$i]){
waterMark($file,$board_skin_path."/img/logo_mark.gif");  // 요거 추가됨 윈본이미지우측하단에 로고를 붙이자, gif 만 됨
}

if ($i==0 && $_FILES[bf_file][name][0]){
    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);

        $rate = $board[bo_1] / $size[0];
        $height = (int)($size[1] * $rate);

        @unlink($thumb_path.'/'.$wr_id);
        $dst = imagecreatetruecolor($board[bo_1], $height);
        imagecopyresampled($dst, $src, 0, 0, 0, 0, $board[bo_1], $height, $size[0], $size[1]);
        imagepng($dst, $thumb_path.'/'.$wr_id, $board[bo_2]);
        chmod($thumb_path.'/'.$wr_id, 0606);
}
}
}
} //
?>



write.skin.php -------------

<input type="checkbox" name="mark" value="1"/> 워터마킹하기
추천
5

댓글 5개

전체 2,431 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

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