今天完成的是给图片加文字水印,需求是这个样子的,页面上有一个搜索,搜索出来的信息和一张模板图结合成一张新的图片出现在页面上面,这张图片要能让用户自己保存下来,这个其实就是一个加水印的过程,要是TP写的话,手册里面给出方法的,然后我这边是原生过程化写的,所以用的就是GD库加水印。
1.打开GD库,不一定每个人的GD库都是开着的。
这边打开GD库,之后重启wamp
2.添加文字水印
代码:
// 加载要加水印的图像
$im = imagecreatefromjpeg('D:\wwwroot\aikesijia\wwwroot\logo.jpg');
//定义字体颜色
$color=imagecolorallocate($im,0,0,0);
$color4=imagecolorallocate($im,255,0,0);
//获取水印文字
$t1 = mb_convert_encoding($data[0]['name'], "html-entities","utf-8" );
$t2 = mb_convert_encoding($data[0]['wechat'], "html-entities","utf-8" );
$t3 = mb_convert_encoding($data[0]['level'], "html-entities","utf-8" );
$t4 = mb_convert_encoding($data[0]['join_time'], "html-entities","utf-8" );
//获取文字字体
$font = './simhei.ttf';
//设置文字大
$fontSize = 40;
$fontSize2 = 50;
$fontSize4 = 30;
//获取图片A的宽高
list($width, $height, $type, $attr) = getimagesize('D:\wwwroot\aikesijia\wwwroot\logo.jpg');
//定义文字X
$x=385;
$x2=455;
$x4=865;
//定义文字Y
$fontY = 265;
imagettftext($im,$fontSize,0,$x,715,$color,$font,$t1);
imagettftext($im,$fontSize2,0,$x2,1055,$color,$font,$t2);
imagettftext($im,$fontSize2,0,$x2,1155,$color,$font,$t3);
imagettftext($im,$fontSize4,0,$x4,1355,$color4,$font,$t4);
$dest=imagecreatetruecolor($width,$height);
imagecopy($dest,$im,0,0,0,0,$width,$height);
ImageJPEG($im,"D:\wwwroot\aikesijia\wwwroot\uploads\{$data_wechat}.jpeg");
imagedestroy($im) ;
这里可以自己控制文字的位置大小,还有文字的字体,这个只要加载字体文件就可以。
加文字水印应该就这样。
更多源码,请访问 http://www.erdangjiade.com/source
网页特效下载:http://www.erdangjiade.com/js
更多PHP/Mysql功能:http://www.erdangjiade.com/php
更多原创模板,尽在 http://www.erdangjiade.com/templates
PHP网站开发求职QQ群 368848856