900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > PHP图片加水印代码示例解析

PHP图片加水印代码示例解析

时间:2024-04-22 08:34:05

相关推荐

PHP图片加水印代码示例解析

php教程|php手册

PHP,图片,加,水印,代码,示例,解析,一个,正规,网站,在,需要,上传,图,片时,往往,都会,需,要在,片上,增

php教程-php手册

一个正规的网站,在需要上传图片时,往往都会需要在图片上增加自己网站的LOGO水印。那么如何实现这一步骤呢?首先让我们来了解

爱心银行 源码,远程关机命令Ubuntu,32位tomcat7.0,梦见黑色爬虫,最新php框架漏洞,广东一站式seo优化资费lzw

通过判断文件类型建立图形,然后把其复制到原建立的图形上,填充并建立rectangle,以备写入imagestring()或是在原已经定好的图像程序当中判断水印类型:一是字符串,另是增加一个图形对象在上面。以下是PHP图片加水印的转载!

api注册源码下载,ubuntu 看外网ip,tomcat 弱口令爆破机,网页爬虫文库,php教程课件,下列关于SEO优化的说法不正确lzw

参数说明:

微信订票系统源码,vscode设置底色,ubuntu彩色,tomcat计算并发,sqlite不支持并发,zblog采集插件,可商用的前端响应式框架,卫生间潮湿虫子爬虫,php升级7.0,鲤城seo报价,ajax 网站模板,简单的旅游网页,手机wap2.0导航模板lzw

$max_file_size : 上传文件大小限制, 单位BYTE

$destination_folder : 上传文件路径

$watermark : 是否附加水印(1为加水印,其他为不加水印);

PHP图片加水印使用说明:

1. 将PHP.INI文件里面的”extension=php_gd2.dll”一行前面的;号去掉,因为我们要用到GD库;

2. 将extension_dir =改为你的php_gd2.dll所在目录;

PHP图片加水印的代码示例:

//上传文件类型列表$uptypes=array(image/jpg,image/jpeg,image/png,image/pjpeg,image/gif,image/bmp,image/x-png);$max_file_size=2000000; //上传文件大小限制, 单位BYTE$destination_folder="uploadimg/"; //上传文件路径$watermark=1; //是否附加水印(1为加水印,其他为不加水印);$watertype=1; //水印类型(1为文字,2为图片)$waterposition=1; //水印位置(1为左下角,2为右下角 ,3为左上角,4为右上角,5为居中);$waterstring=" /"; //水印字符串$waterimg="xplore.jpg"; //水印图片$imgpreview=1; //是否生成预览图(1为生成,其他为不生成);$imgpreviewsize=1/2; //缩略图比例?>ZwelL图片上传程序上传文件:

允许上传的文件类型为:< ?phpif ($_SERVER[REQUEST_METHOD] == POST){if (!is_uploaded_file($_FILES["upfile"] [tmp_name]))//是否存在文件{echo "图片不存在!";exit;}$file = $_FILES["upfile"];if($max_file_size < $file["size"])//检查文件大小{echo "文件太大!";exit;}if(!in_array($file["type"], $uptypes))//检查文件类型{echo "文件类型不符!".$file["type"];exit;}if(!file_exists($destination_folder)){mkdir($destination_folder);}$filename=$file["tmp_name"];$image_size = getimagesize($filename);$pinfo=pathinfo($file["name"]);$ftype=$pinfo[extension];$destination = $destination_folder. time().".".$ftype;if (file_exists($destination) && $overwrite != true){echo "同名文件已经存在了";exit;}if(!move_uploaded_file ($filename, $destination)){echo "移动文件出错";exit;}$pinfo=pathinfo($destination);$fname=$pinfo[basename];echo " 已经成功上传

文件名:".$destination_folder. $fname."

";echo " 宽度:".$image_size[0];echo " 长度:".$image_size[1];echo "

大小:".$file["size"]." bytes";if($watermark==1){$iinfo=getimagesize($destination,$iinfo);$nimage=imagecreatetruecolor($image_size[0] ,$image_size[1]);$white=imagecolorallocate($nimage,255,255,255);$black=imagecolorallocate($nimage,0,0,0);$red=imagecolorallocate($nimage,255,0,0);imagefill($nimage,0,0,$white);switch ($iinfo[2]){case 1:$simage =imagecreatefromgif($destination);break;case 2:$simage =imagecreatefromjpeg($destination);break;case 3:$simage =imagecreatefrompng($destination);break;case 6:$simage =imagecreatefromwbmp($destination);break;default:die("不支持的文件类型");exit;}imagecopy($nimage,$simage,0,0,0,0, $image_size[0],$image_size[1]);imagefilledrectangle($nimage,1, $image_size[1]-15,80,$image_size[1],$white);switch($watertype){case 1: //加水印字符串imagestring($nimage,2,3,$image_size[1]-15, $waterstring,$black);break;case 2: //加水印图片$simage1 =imagecreatefromgif("xplore.jpg");imagecopy($nimage,$simage1,0,0,0,0,85,15);imagedestroy($simage1);break;}switch ($iinfo[2]){case 1://imagegif($nimage, $destination);imagejpeg($nimage, $destination);break;case 2:imagejpeg($nimage, $destination);break;case 3:imagepng($nimage, $destination);break;case 6:imagewbmp($nimage, $destination);//imagejpeg($nimage, $destination);break;}//覆盖原上传文件imagedestroy($nimage);imagedestroy($simage);}if($imgpreview==1){echo "

图片预览:

";echo "";}}?>

以上这段代码范例就是PHP图片加水印的具体实现方法。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。