首页 > 编程知识 正文

photoshop如何加水印,去水印网站源码

时间:2023-05-06 12:24:43 阅读:169508 作者:1758

目前QQ空间和新浪微博等社交软件中,分享的图片大多都是添加水印的。添加水印之后的照片也就变得独一无二了,好像就是添加了一个专属的个人签名。可以很好的防止别人盗用你的照片,也能够让别人一看水印就能在上面得到一些关于照片的信息。今天写了一个给图片添加水印的函数,和大家分享一下。有了这个函数,给照片添加水印就显的方便多了。其实原理很简单,原图是一张图片,水印其实也是一张图片,只不过有的水印是白色或透明色背景,然后两张图片进行合成,就成了水印图片。

1 .制作水印图像所需的php函数

(1)getimagesize();

(2)imagecreatefromgif();imagecreatefromjpeg();imagecreatefrompng;

(3)imagecogy();

(4)imagegif();imagejpeg();imagepng();

具体函数如何使用,我就不细讲了,大家可以参考php参考手册

2 .代码共享? PHPfunctionwatermark($minfile,$minfile )//获取尺寸图信息) maxarr=getimagesize ) $maxfile ); $minarr=getimagesize($minfile; $max_width=$maxarr[0]; $max_height=$maxarr[1]; $max_format=$maxarr[2]; $max_mime=$maxarr['mime']; $min_width=$minarr[0]; $min_height=$minarr[1]; $min_format=$minarr[2]; //$min_mime=$minarr['mime']; //判定大小图格式switch(max_format ) case 1: $ max _ create img=' imagecreatefromgif '; $max_outimg='imagegif '; 黑; case 2: $ max _ create img=' imagecreatefromjpeg '; $max_outimg='imagejpeg '; 黑; case 3: $ max _ create img=' imagecreatefrompng '; $max_outimg='imagepng '; 黑; }switch($min_format ) case 1: $ min _ create img=' imagecreatefromgif '; 黑; case 2: $ min _ create img=' imagecreatefromjpeg '; 黑; case 3: $ min _ create img=' imagecreatefrompng '; 黑; //创建尺寸映射资源$maxim=$max_createimg($maxfile ); $minim=$min_createimg($minfile );//两张图的尺寸差$ d _ value _ x=$ max _ width-$ min _ width; $ d _ value _ y=$ max _ height-$ min _ height; //添加水印imagecopy($maxim,$minim,$D_value_x,$D_value_y,0,0,$min_width,$min_height ) $max_outimg($maxim,' watermark.jpg ' ); }watermark('picture/apple.jpg )、' picture/copypic.jpg );

3 .说一些代码中可能不太理解的地方

(1)因为不同格式的图片所需要的函数后缀是不一样的,所以必须在使用函数创建资源和保存水印图片前进行判断图片格式。

(2)计算两个图片的尺寸差,是为了将小图很好的添加到大图的右下角(大多水印都是添加到右下角的吧)。

4 .可以整体优化的地方(1)两个switch总觉得有点多了。如果放到if语句或者for循环中,肯定能整合一下。好饿,所以以后在优化这个问题(明显是给自己找借口)。

(2)我用的水印直接是另一张尺寸较小的图片。然而实际的水印大多是一行字,一个网址,一个时间等。可以用做制作验证码的方法,制作水印。然后将水印所需要的文字作为函数的参数,就可以在一张图片中添加自己想要的水印,同时水印的生成也不需要去找图片,完全自动生成。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。