首页 > 后端开发 > php教程 > php 给文件夹下的所有图片批量打水印

php 给文件夹下的所有图片批量打水印

WBOY
发布: 2016-07-28 08:25:51
原创
1101 人浏览过

php 给指定文件夹下的所有图片批量打水印

<?php define("ROOTDIR", &#39;C:\Users\ADMIN\Pictures\20160715&#39;);
	define("DSDIR", "C:\Users\ADMIN\Pictures\watermarked-3");
	define("SEPARATER", &#39;\\&#39;);
	$watermark = imagecreatefrompng(&#39;watermark.png&#39;); //水印文件
	$wsx = imagesx($watermark); //水印宽度
	$wsy = imagesy($watermark); //水印高度
	$filenames = scandir(ROOTDIR); //读取文件夹下的所有文件
	$i = 0;
	//遍历所有文件
	foreach($filenames as $name){
		switch ($name) {
			case &#39;.&#39;: //文件夹本身不处理
				break;
			case &#39;..&#39;: //上级文件夹不处理
				break;
			default: // 读取图片文件(png,jpg)
				if(&#39;png&#39;==strstr($name, &#39;png&#39;)){
					$image = imagecreatefrompng(ROOTDIR.SEPARATER.$name);
				}else{
					$image = imagecreatefromjpeg(ROOTDIR.SEPARATER.$name);
				}
				
				$isx = imagesx($image);
				$isy = imagesy($image);
				$flag = imagecopy($image, $watermark, $isx-$wsx-20, $isy-$wsy-20, 0, 0, $wsx, $wsy);
				if($flag){
					imagejpeg($image,DSDIR.SEPARATER.$name); //保存文件
					imagedestroy($image);//内存回收
				}else{
					echo &#39;失败&#39;;
				}
		}
	}
	
?>
登录后复制

以上就介绍了 php 给文件夹下的所有图片批量打水印,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板