PHP头条
热点:

php图片的应用-生成带有水印文字的图片-生成带有水印图标的图片-生成缩略图(//为注释内容,不影响文件执行)


////////////////定义水印文字函数开始//////////////////
function watertext($i,$t='版权所有',$s=20,$c='white',$p=9){
$img = imagecreatefromjpeg($i); //imagecreatefromjpeg — 由文件或 URL 创建一个新图象。

$cc = '';
////////switch循环,循环水印文字的颜色 开始//////
switch($c){
case 'white':
$cc = imagecolorallocatealpha($img,255,255,255,50);
break;
case 'red':
$cc = imagecolorallocatealpha($img,255,0,0,50);
break;
case 'green':
$cc = imagecolorallocatealpha($img,0,255,0,50);
break;
case 'blue':
$cc = imagecolorallocatealpha($img,0,0,255,50);
break;
default:
$cc = imagecolorallocatealpha($img,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255),mt_rand(0,100));
break;
}
/////////switch循环,循环水印文字的颜色 结束//////

//imagecolorallocatealpha — 为一幅图像分配颜色 + alpha
$c = imagecolorallocatealpha($img,255,255,255,80);

//定义水印文字的字体
$font = dirname(__FILE__).'/h.ttf'; //dirname — 返回路径中的目录部分

//imagettfbbox — 取得使用 TrueType 字体的文本的范围
$r = imagettfbbox($s,0,$font,iconv('gbk','utf-8',$t));
$ttfw = $r[2] - $r[0] + 10;
$ttfh = $r[1] + 10;


$x = imagesx($img)-$ttfw; //imagesx — 取得图像宽度
$y = imagesy($img)-$ttfh; //imagesy — 取得图像高度

//imagettftext — 用 TrueType 字体向图像写入文本
imagettftext($img,$s,0,$x,$y,$cc,$font,iconv('gbk','utf-8',$t));
imagejpeg($img,$i); //imagejpeg — 输出图象到浏览器或文件。
imagedestroy($img); //imagedestroy — 销毁一图像
}
////////////////定义水印文字函数结束//////////////////


////////////////定义水印图标函数开始//////////////////
function watericon($i){
$img = imagecreatefromjpeg($i); //imagecreatefromjpeg — 由文件或 URL 创建一个新图象。

// 找到某个文件夹下制作好的水印图标文件
$l = dirname(__FILE__).'/logo.png'; //dirname — 返回路径中的目录部分
$logo = imagecreatefrompng($l); //imagecreatefrompng — 由文件或 URL 创建一个新图象。


$xx = imagesx($logo); //imagesx — 取得水印图像宽度
$yy = imagesy($logo); //imagesy — 取得水印图像高度


$x = imagesx($img)-$xx-15; //定义水印图标在图片中的x坐标
$y = imagesy($img)-$yy-15; //定义水印图标在图片中的y坐标


imagecopy($img,$logo,$x,$y,0,0,$xx,$yy); //imagecopy — 拷贝图像的一部分

imagejpeg($img,$i); ////imagejpeg — 输出图象到浏览器或文件。
imagedestroy($img); //imagedestroy — 销毁一图像
imagedestroy($logo); //imagedestroy — 销毁一图像
}
//a.jpg s_a.jpg
////////////////定义水印图标函数结束//////////////////




////////定义缩略图函数开始//////////
function thumd($i,$w=170,$h=0){ // 默认宽为170,高成比例
$ww = $w;
$hh = $h;

$img = imagecreatefromjpeg($i); ////imagecreatefromjpeg — 由文件或 URL 创建一个新图象。
$iw = imagesx($img); //imagesx — 取得水印图像宽度
$ih = imagesy($img); //imagesy — 取得水印图像高度

//如果高为0,则高按比例自动计算
if($h==0){
$hh = $w/$iw * $ih;
}

$new = imagecreatetruecolor($ww,$hh); //imagecreatetruecolor — 新建一个真彩色图像

//imagecopyresampled — 重采样拷贝部分图像并调整大小
imagecopyresampled($new,$img,0,0,0,0,$ww,$hh,$iw,$ih);

//pathinfo — 返回文件路径的信息
$path = pathinfo($i,PATHINFO_DIRNAME).'/s_'.pathinfo($i,PATHINFO_BASENAME);
imagejpeg($new,$path); ////imagejpeg — 输出图象到浏览器或文件。
imagedestroy($new); //imagedestroy — 销毁一图像
imagedestroy($img); //imagedestroy — 销毁一图像
}
////////定义缩略图函数结束//////////

www.phpzy.comtrue/phprm/44469.htmlTechArticlephp图片的应用-生成带有水印文字的图片-生成带有水印图标的图片-生成缩略图(//为注释内容,不影响文件执行) ////////////////定义水印文字函数开始////////////////// function watertext($i,$t=...

相关文章

PHP之友评论

今天推荐