첨부파일 워터마크 넣기

· 2014-12-12 (금) 14:38:38 · 13998 · 9
시간이 많이 없어서 영카트는 아직 확인하지 못했군요..
http://sir.co.kr/bbs/board.php?bo_table=g5_tip&wr_id=2297
에서 image_proc.function.php 소스 복사하시면 됩니다.

이건 첨부파일 용이라 에디터는 적용안됩니다!!



[code]
//워터마크 체크할 파일 인클루드
include_once(G5_LIB_PATH.'/image_proc.function.php');

$sql_data = "select * from g5_board_file where bo_table = '$bo_table' and wr_id = '$wr_id' ";
$res_data = mysql_query($sql_data);
while ($row_data = mysql_fetch_array($res_data)) {

$exp = $row_data[bf_file];//원본파일
$exp_img = explode(".",$exp);
//확장자가 이미지 일때만
if ($exp_img[1] == "jpg" or $exp_img[1] == "png" or $exp_img[1] == "gif" or $exp_img[1] == "jpeg" or $exp_img[1] == "JPG" or $exp_img[1] == "PNG" or $exp_img[1] == "GIF" or $exp_img[1] == "JPEG") {

$path_file = G5_PATH.'/data/file/'.$bo_table."/".$row_data[bf_file];
$path_mark_file = G5_PATH.'/img/wtm.gif';//워터마크에 사용할 파일
$path_save_top_right_file = G5_PATH.'/data/file/'.$bo_table."/".$row_data[bf_file]; //워터마크 처리한 것을 원본에 덮어씌움

//원본의 이미지 리소스를 받아온다.
list($src, $src_w, $src_h) = get_image_resource_from_file ($path_file);
if (empty($src)) die($GLOBALS['errormsg'] . "<br />\n");

//워터마크에 사용될 이미지 리소스를 받아온다.
list($mark, $mark_w, $mark_h) = get_image_resource_from_file ($path_mark_file);
if (empty($mark)) die($GLOBALS['errormsg'] . "<br />\n");

//원본을 5 분의 1로 축소한 너비와 높이를 구한다.
$src_w_small = $src_w; //리사이징 제거함
$src_h_small = get_size_by_rule($src_w, $src_h, $src_w_small);

//원본의 상단 오른쪽을 기준으로 선명도 100으로 워터마크 처리
if ($src_w > 200) { //width가 200 이하인 이미지는 워터마크 처리안함
$src2 = get_image_resize($src, $src_w, $src_h, $src_w_small, $src_h_small);
if (empty($src2)) die($GLOBALS['errormsg'] . "<br />\n");


$src2_x = $src_w_small - $mark_w;
$src2_y = 0;

//padding 을 10px 씩 줘야 하므로 x좌표는 왼쪽으로 10 이동 y좌표는 아래로 10 이동
$src2_x -= 10;
$src2_y += 10;

//워터마크는 투명도 50으로 설정
$result_watermark = imagecopymerge($src2, $mark, $src2_x, $src2_y, 0, 0, $mark_w, $mark_h, 50);
if ($result_watermark === false) die("워터마크 처리에 실패하였습니다.<br />\n");

$result_save = save_image_from_resource ($src2, $path_save_top_right_file, 100, 2);//저장
if ($result_save === false) die($GLOBALS['errormsg'] . "<br />\n");

@imagedestroy($src2);
}

} // if
}
[/code]
|

댓글 9개

좋은 자료 감사합니다. ^^
2014-12-15 (월) 12:21:32
도움이 되셨으면 좋겠네요~
2014-12-12 (금) 17:38:21
고맙습니다.
공유를 지향하기 때문에 워터마크를 넣을 생각은 없지만... 한번 시험 삼아 적용해 보고 싶군요.
2014-12-15 (월) 12:21:22
저도 공유를 지향하지만 고객의 요청은 어쩔수가없군요 ㅡ.,ㅡㅋ
너무 유용한 정보네요...^^
찾아보기 어려울 만큼 귀중한 정보입니다. 고맙습니다.
너무 좋아요. 감사합니다.
우측 하단에 워터마크가 나타났으면 하는데 어떻게 수정 해야 하나요?
2022-10-12 (수) 10:17:44
혹시 에디터랑 밑에 첨부파일이랑 같이 적용은 안되나요????
그리고 저만 첨부파일 적용 소스 넣으면 안되나요???
댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

2,788건
+
제목 글쓴이 날짜 조회
15-01-24 조회 9,909
15-01-15 조회 1.9만
15-01-13 조회 1.7만
15-01-08 조회 1.5만
15-01-04 조회 1.2만
14-12-31 조회 7,721
14-12-28 조회 1.4만
14-12-28 조회 1.3만
14-12-27 조회 1.1만
14-12-22 조회 1.5만
14-12-22 조회 1.2만
14-12-22 조회 1.6만
14-12-22 조회 1.1만
14-12-19 조회 8,614
14-12-19 조회 9,098
14-12-18 조회 1.7만
14-12-16 조회 1만
14-12-13 조회 1.1만
14-12-12 조회 7,055
14-12-12 조회 1.4만
14-12-09 조회 1.3만
14-12-09 조회 1.3만
14-12-09 조회 1.7만
14-12-09 조회 1.3만
14-11-30 조회 9,435
14-11-28 조회 1.2만
14-11-28 조회 7,035
14-11-25 조회 1.3만
14-11-25 조회 8,927
14-11-21 조회 8,848