맛집 여행 캠핑 일상 생활

PHP 이미지에 워터마크 넣기 본문

LAMP

PHP 이미지에 워터마크 넣기

영은파더♥ 2016. 7. 28. 15:18
728x90

PHP 이미지에 워터마크 넣기


돌아다니는 워터마크 소스 이쁘게 다듬어보았습니다.

사용방법은 <img src="./watermark.php?path=원본이미지경로"> 이렇게 하시면 됩니다.

그리고 워터마크를 삽입해서 저장하는 방법은

imagejpeg($image, '새로저장할경로');

퀄리티를 조절하려면

imagejpeg($image, '새로저장할경로', 80);

이렇게 하면 됩니다.

watermark.php 소스

<?php

$ALIGN_CENTER = false;

$IMAGE_PATH =  $_GET['path'];

$WATERMARK_PATH = './watermark.png';

$IMAGE_TYPE = strtolower(substr($IMAGE_PATH, strlen($IMAGE_PATH)-4, 4));

$WATERMARK_TYPE = strtolower(substr($WATERMARK_PATH, strlen($WATERMARK_PATH)-4, 4));

if($IMAGE_TYPE == '.bmp') $image = imagecreatefromwbmp($IMAGE_PATH);

if($IMAGE_TYPE == '.gif') $image = imagecreatefromgif($IMAGE_PATH);

if($IMAGE_TYPE == '.jpg') $image = imagecreatefromjpeg($IMAGE_PATH);

if($IMAGE_TYPE == '.png') $image = imagecreatefrompng($IMAGE_PATH);

if($image) {

if($WATERMARK_TYPE == '.bmp') $watermark = imagecreatefromwbmp($WATERMARK_PATH);

if($WATERMARK_TYPE == '.gif') $watermark = imagecreatefromgif($WATERMARK_PATH);

if($WATERMARK_TYPE == '.jpg') $watermark = imagecreatefromjpeg($WATERMARK_PATH);

if($WATERMARK_TYPE == '.png') $watermark = imagecreatefrompng($WATERMARK_PATH);

if($watermark) {

list($IMAGE_W, $IMAGE_H) = getimagesize($IMAGE_PATH);

list($WATERMARK_W, $WATERMARK_H) = getimagesize($WATERMARK_PATH);

if($ALIGN_CENTER) { // Center

$POS_X = (($IMAGE_W - $WATERMARK_W)/2);

$POS_Y = (($IMAGE_H - $WATERMARK_H)/2);

}

else {

$POS_X = ($IMAGE_W - $WATERMARK_W);

$POS_Y = ($IMAGE_H - $WATERMARK_H);

}

imagealphablending($image, true);

imagecopy($image, $watermark, $POS_X, $POS_Y, 0, 0, $WATERMARK_W, $WATERMARK_H);

header("Content-type: image/jpeg");

imagejpeg($image);

imagedestroy($image);

imagedestroy($watermark);

}

}

?>



728x90
반응형
Trackback : | Comments :