PHP判断来源显示图片水印

<?php 
// # 配置文件 

$floder = ''; #图片保存文件夹 

$waterpic = 'win.png'; #水印图片地址 

$referer = 'kalvin'; #来源页包含字符串 

// # 配置文件 

header("Content-type: image/png"); # 设置输出文件头 

$filename = $floder . $_GET["filename"]; # 设置源文件地址 

$sourceImg = imagecreatefromjpeg($filename); # 读取源图像 

$waterImg = imagecreatefrompng($waterpic); # 读取水印标志 

$bg_color = imagecolorat($waterImg, 1, 1); # 取出标志中需要设为透明的颜色 

imagecolortransparent($waterImg, $bg_color); # 设置标志中需要透明的颜色 

$sourceX = imagesx($sourceImg); # 取得源图像宽度 

$sourceY = imagesy($sourceImg); # 取得源图像高度 

$waterX = imagesx($waterImg); # 取得标志像宽度 

$waterY = imagesy($waterImg); # 取得标志像高度 

$x = ($sourceX - $waterX) / 2; 
$y = ($sourceY - $waterY) / 2; #计算中心位置 

if (isset($_SERVER['HTTP_REFERER']) && strpos($_SERVER['HTTP_REFERER'], $referer) == false) 
{ 
    imagecopymerge($sourceImg, $waterImg, $x, $y, 0, 0, $waterX, $waterY, 80); #合并图像 合并度设置为50 .100为完全合并.相当于把第二个参数里的图像透明到原来的50/100然后贴到第一个参数的图像里 

} 
imagepng($sourceImg); #输出图像 

?> 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值