首页 > 资讯列表 > 编程/数据库 >> PHP

PHP图片处理之使用imagecopy函数添加图片水印实例讲解

PHP 2014-12-17 15:18:05 转载来源: 网络整理/侵权必删

本文向大家讲解的是PHP图片处理之使用imagecopy函数添加图片水印实例,给出了一个简单的入门级的自定义函数示例,需要的朋友可以参考下 为图片添加水印也是图片处理中常见的功能。因为只要在页面中见到的图片都可以很轻松地拿到,你辛辛苦苦编辑的图片不想被别人不费吹灰之力拿走就用,所以为图片添加水印以确定版权,防止图片被盗用

本文向大家讲解的是PHP图片处理使用imagecopy函数添加图片水印实例,给出了一个简单的入门级的自定义函数示例,需要的朋友可以参考下

为图片添加水印也是图片处理中常见的功能。因为只要在页面中见到的图片都可以很轻松地拿到,你辛辛苦苦编辑的图片不想被别人不费吹灰之力拿走就用,所以为图片添加水印以确定版权,防止图片被盗用。制作水印可以使用文字(公司名称加网址),也可以使用图片(公司LOGO),图片水印效果更好一些,因为可以通过一些做图片软件进行美化。使用文字做水印,只需要在图片上画一些文字即可。如果制作图片水印,就需要先了解一下GD库中的imagecopy()函数,能复制图片的一部分。该函数的原型如下所示:


bool imagecopy(resource dst_im,resource src_im,int dst_x,int dst_y,int src_x,int src_y,int src_w,int src_h)

该函数的作用是将src_im图像中坐标从src_x,src_y开始,宽度为src_w,高度为src_h的一部分复制到dst_im图像中坐标为dst_x和dst_y的位置上。以JPEG格式的图片为例,编写一个为图片添加水印的函数watermark(),代码如下所示:


<?php
//为背景图片添加图片水印(位置随机),背景图片格式为jpeg,水印图片格式为gif
function watermark($filename,$water){
//获取背景图片的宽度和高度
list($b_w,$b_h) = getimagesize($filename);
//获取水印图片的宽度和高度
list($w_w,$w_h) = getimagesize($water);
//在背景图片中放水印图片的位置随机起始位置
$posX = rand(0, ($b_w-$w_w));
$posY = rand(0, ($b_h-$w_h));
//创建背景图片的资源
$back = imagecreatefromjpeg($filename);
//创建水印图片的资源
$water = imagecreatefromgif($water);
//使用imagecopy()函数将水印图片复制到背景图片指定的位置中
imagecopy($back, $water, $posX, $posY, 0, 0, $w_w, $w_h);
//保存带有水印图片的背景图片
imagejpeg($back,$filename);
imagedestroy($back);
imagedestroy($water);
}
watermark("brophp.jpg", "logo.gif");
?>

标签: 图片 PHP 处理 使用 imagecopy 函数 添加 水印 实例


声明:本文内容来源自网络,文字、图片等素材版权属于原作者,平台转载素材出于传递更多信息,文章内容仅供参考与学习,切勿作为商业目的使用。如果侵害了您的合法权益,请您及时与我们联系,我们会在第一时间进行处理!我们尊重版权,也致力于保护版权,站搜网感谢您的分享!

站长搜索

http://www.adminso.com

Copyright @ 2007~2024 All Rights Reserved.

Powered By 站长搜索

打开手机扫描上面的二维码打开手机版


使用手机软件扫描微信二维码

关注我们可获取更多热点资讯

站长搜索目录系统技术支持