您的位置:首页 > 编程语言 > PHP开发

用PHP对一张图片进行九宫格位置的随机水印添加 (个人学习笔记)

2013-08-16 15:43 651 查看
<?php

$pho='juren.jpg';
$shuiyin0='shuiyin.gif';

$photo= imagecreatefromjpeg($pho);       //打开图片
$shuiyin= imagecreatefromgif($shuiyin0);//打开水印   imagecreatefromgif()函数 打开一张图片

$info= getimagesize($pho);   	//获得图片的大小
$infos=getimagesize($shuiyin0);//获得水印的大小 getimagesize()函数 获得图片的信息 $infos[0]宽度$infos[1]高

$avg_x=$info[0]/3;       //对图片进行X轴的三等分
$avg_y=$info[1]/3;      //对图片进行Y轴的三等分

$width= array(0,$avg_x,$avg_x*2);        //九宫格X轴所有坐标
$height= array(0,$avg_y,$avg_y*2);      // 九宫格Y轴所有坐标

$x= $width[mt_rand(0,2)];      //随机选取一个九宫格X轴坐标
$y= $height[mt_rand(0,2)];    // 随机选取一个九宫格Y轴坐标
$x_s=$infos[0];			     //  水印的宽度
$y_s=$infos[1];			    //	 水印的高度

imagecopymerge($photo,$shuiyin,$x,$y,0,0,$x_s,$y_s,100); //生成带水印的图片 imagecopymerge()函数合并图片 参数(图片,水印,水印在图片上的X轴位置,水印在图片上的Y轴位置,水印起始X轴,水印起始Y轴,水印终止X轴,水印终止Y轴,水印透明度)

header("content-type:image/jpg");
header("content-type:image/gif");

imagejpeg($photo);//一个参数时  imagejpeg($photo) 此时输出到浏览器                   	                   三个参数 imagejpeg($photo,'new.jpg',100) 此时保存到文件夹中,且 数值100 是保存的图片的质量
?>


链接自:php讨客网
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  图片添加水印