Home >php教程 >php手册 >php加水印的代码(支持半透明透明打水印,支持png透明背景)

php加水印的代码(支持半透明透明打水印,支持png透明背景)

WBOY
WBOYOriginal
2016-06-06 20:32:271372browse

一个简单的打水印代码(图片水印),支持水印透明度设置,也支持png透明背景格式图片打水印

代码如下:
//原始图像
$dst = "/upload/20120914/20120914040740-0.jpg"; //注意图片路径要正确
//得到原始图片信息
$dst_info = getimagesize($dst);
switch ($dst_info[2])
{
case 1:
$dst_im =imagecreatefromgif($dst);break;
case 2:
$dst_im =imagecreatefromjpeg($dst);break;
case 3:
$dst_im =imagecreatefrompng($dst);break;
case 6:
$dst_im =imagecreatefromwbmp($dst);break;
default:
die("不支持的文件类型1");exit;
}
//水印图像
$src = "/images/shuiyin.png"; //注意路径要写对
$src_info = getimagesize($src);
switch ($src_info[2])
{
case 1:
$src_im =imagecreatefromgif($src);break;
case 2:
$src_im =imagecreatefromjpeg($src);break;
case 3:
$src_im =imagecreatefrompng($src);break;
case 6:
$src_im =imagecreatefromwbmp($src);break;
default:
die("不支持的文件类型1");exit;
}

//半透明格式水印
//$alpha = 50;//水印透明度
//imagecopymerge($dst_im,$src_im,$dst_info[0]-$src_info[0]-10,$dst_info[1]-$src_info[1]-10,0,0,$src_info[0],$src_info[1],$alpha);

//支持png本身透明度的方式
imagecopy($dst_im,$src_im,$dst_info[0]-$src_info[0]-10,$dst_info[1]-$src_info[1]-10,0,0,$src_info[0],$src_info[1]);

//保存图片
switch ($dst_info[2]){
case 1:
imagegif($dst_im,$dst);break;
case 2:
imagejpeg($dst_im,$dst);break;
case 3:
imagepng($dst_im,$dst);break;
case 6:
imagewbmp($dst_im,$dst);break;
default:
die("不支持的文件类型2");exit;
}
imagedestroy($dst_im);
imagedestroy($src_im);

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn