이미지에 워터마크 넣기 > 그누4 팁자료실

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

이미지에 워터마크 넣기 정보

이미지에 워터마크 넣기

본문

====================================================
bbs/write_update.php
====================================================
109~164행 추가
----------------------------------------------------
// 이미지에 워터마크 넣기
// PHP > 4.0, GD > 2.0.1
// WatermarkImage("원본이미지","겹처지는이미지","투명도","화질",[겹치는이미지위치(0,1,2)]);
function WatermarkImage($CanvasImage, $WatermarkImage /* MUST BE PNG */, $Opacity=30, $Quality=70, $WatermarkLocate=1)
{
  // create true color canvas image:
  $canvas_src = imagecreatefromjpeg($CanvasImage);
  $canvas_w = ImageSX($canvas_src);
  $canvas_h = ImageSY($canvas_src);
  $canvas_img = imagecreatetruecolor($canvas_w, $canvas_h);
  imagecopy($canvas_img, $canvas_src, 0,0,0,0, $canvas_w, $canvas_h);
  imagedestroy($canvas_src);    // no longer needed

  // create true color overlay image:
  $overlay_src = imagecreatefrompng($WatermarkImage);
  $overlay_w = ImageSX($overlay_src);
  $overlay_h = ImageSY($overlay_src);
  $overlay_img = imagecreatetruecolor($overlay_w, $overlay_h);
  imagecopy($overlay_img, $overlay_src, 0,0,0,0, $overlay_w, $overlay_h);
  imagedestroy($overlay_src);    // no longer needed

  // setup transparent color (pick one):
  $black  = imagecolorallocate($overlay_img, 0x00, 0x00, 0x00);
  $white  = imagecolorallocate($overlay_img, 0xFF, 0xFF, 0xFF);
  $magenta = imagecolorallocate($overlay_img, 0xFF, 0x00, 0xFF);   
  // and use it here:
  imagecolortransparent($overlay_img, $white);

  // 워터마크 이미지의 위치(기본값은 가운데 1입니다.)
  switch ($WatermarkLocate) {
case 0:  // 좌측상단
  $ww = 0;
  $wh = 0;
  break;
  case 1: // 가운데
  $ww = ($canvas_w / 2) - ($overlay_w / 2);
  $wh = $canvas_h - ($overlay_h);
  break;
  case 2: // 우측하단
  $ww = $canvas_w - ($overlay_w);
  $wh = $canvas_h - ($overlay_h);
  break;
}

  // copy and merge the overlay image and the canvas image:
  imagecopymerge($canvas_img, $overlay_img, $ww,$wh,0,0, $overlay_w, $overlay_h, $Opacity);

  imagejpeg($canvas_img, $CanvasImage, $Quality);
/*
  // output:
  header("Content-type: image/jpeg");
  imagejpeg($canvas_img, '', $Quality);
*/
  imagedestroy($overlay_img);
  imagedestroy($canvas_img);
}
----------------------------------------------------
238~241행 추가
----------------------------------------------------
// WatermarkImage("원본이미지","겹처지는이미지","투명도","화질",[겹치는이미지위치(0,1,2)]);
            // 겹치는이미지위치값이 0이면 좌측상단, 1이면 가운데, 2이면 우측하단
            $overfile = "$g4[path]/overlay.png";
            WatermarkImage("$dest_file", $overfile, 40, 70, 1);
----------------------------------------------------
//워터마크기능
추천
1

댓글 15개

이거 원래 여러장 업로드할때는 마지막장만 워터마크가 찍히는가요?
테스트해보니 그렇게 되네요..

그리고 글수정에서 이미지를 삭제하고 수정완료하니까 무슨 에러표시 5~6줄 생겼다 넘어가네요.
작동은 정상작동이 되긴하는데요.
전체 15 |RSS
그누4 팁자료실 내용 검색
  • 개별 목록 구성 번호 제목 작성자 작성일 추천 조회
  • 게시물이 없습니다.

회원로그인

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