做美团网站多少钱,潍坊专业做网站的公司,wordpress支付平台,全网营销思路这篇文章主要介绍了ThinkPHP打水印及设置水印位置的方法,结合实例形式分析了thinkPHP打印与设置水印的相关操作步骤与具体实现技巧,需要的朋友可以参考下本文实例讲述了ThinkPHP打水印及设置水印位置的方法。分享给大家供大家参考#xff0c;具体如下#xff1a;最近在用Thin…这篇文章主要介绍了ThinkPHP打水印及设置水印位置的方法,结合实例形式分析了thinkPHP打印与设置水印的相关操作步骤与具体实现技巧,需要的朋友可以参考下本文实例讲述了ThinkPHP打水印及设置水印位置的方法。分享给大家供大家参考具体如下最近在用Thinkphp的打水印的功能发现只能打在左下角。 PHP打水印功还是很容易的最要是用到bool imagecopymerge ( resource $dst_im , resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h , int $pct )将 src_im 图像中坐标从 src_xsrc_y 开始宽度为 src_w高度为 src_h 的一部分拷贝到 dst_im 图像中坐标为 dst_x 和 dst_y 的位置上。两图像将根据 pct 来决定合并程度其值范围从 0 到 100。当 pct 0 时实际上什么也没做当为 100 时对于调色板图像本函数和 imagecopy() 完全一样它对真彩色图像实现了 alpha 透明。水印demo图我需要把水印打到图片的真中间查看Thinkphp代码。发现作者居然是写死了我只能做一个修改/*** 为图片添加水印* static public* param string $source 原文件名* param string $water 水印图片* param string $$savename 添加水印后的图片名* param string $postion 水印的具体位置 leftbottom rightbottom lefttop righttop center * param string $alpha 水印的透明度* return void*/static public function water($source, $water, $savenamenull,$postioncenter, $alpha80) {//检查文件是否存在if (!file_exists($source) || !file_exists($water))return false;//图片信息$sInfo self::getImageInfo($source);$wInfo self::getImageInfo($water);//如果图片小于水印图片不生成图片if ($sInfo[width] $wInfo[width] || $sInfo[height] $wInfo[height]) return false; //建立图像 $sCreateFun imagecreatefrom . $sInfo[type]; $sImage $sCreateFun($source); $wCreateFun imagecreatefrom . $wInfo[type]; $wImage $wCreateFun($water); //设定图像的混色模式 imagealphablending($wImage, true); //图像位置,默认为右下角右对齐 $posArr $this-WaterPostion($postion,$sInfo,$wInfo); //新增//生成混合图像imagecopymerge($sImage, $wImage, $posArr[0], $posArr[1], 0, 0, $wInfo[width], $wInfo[height], $alpha);//输出图像$ImageFun Image . $sInfo[type];//如果没有给出保存文件名默认为原图像名if (!$savename) {$savename $source;unlink($source);}//保存图像$ImageFun($sImage, $savename);imagedestroy($sImage);}private function WaterPostion($postion,$sInfo,$wInfo){$posY $sInfo[height] - $wInfo[height];$posX $sInfo[width] - $wInfo[width];switch($postion){case rightbottom:return array($posX,$posY);break;case leftbottom:return array($wInfo[width],$posY);break;case lefttop:return array($wInfo[width],$wInfo[height]);break;case righttop:return array($posX,$wInfo[height]);break;case center:return array($posX/2,$posY/2);break;}}以上就是本文的全部内容希望对大家的学习有所帮助更多相关内容请关注PHP中文网相关推荐