php 水印文字
来源:互联网 发布:智尊宝cad软件下载 编辑:程序博客网 时间:2024/06/05 10:32
php 水印文字 水印图片
不经意间成为了php coder,边学边做
因为项目需要用用到水印文字 ,水印图片自己就整理了一下,留作记录,便于日后学习
$text_list = array();//一次性加多个水印文字$text_list[0]['dst_path'] = "img/1.png";//水印底图路径$text_list[0]['size'] =20;//字体大小$text_list[0]['angle'] =0;//水印文字旋转角度$text_list[0]['x'] =100;//水印文字x坐标$text_list[0]['y'] =200;//水印文字y坐标$text_list[0]['color'] =array(255,0,0); //水印文字颜色$text_list[0]['font_file'] = "1.ttf"; //水印文字用到的字体文件$text_list[0]['content'] = "晨露微凉"; //水印内容$text_list[1]['dst_path'] = "img/1.png";//水印底图路径$text_list[1]['size'] =20;//字体大小$text_list[1]['angle'] =0;//水印文字旋转角度$text_list[1]['x'] =222;//水印文字x坐标$text_list[1]['y'] =300;//水印文字y坐标$text_list[1]['color'] =array(255,255,0); //水印文字颜色$text_list[1]['font_file'] = "1.ttf"; //水印文字用到的字体文件$text_list[1]['content'] = "jokechat"; //水印内容$text_list['avatar']['dst_path'] ="img/1.png";//底图路径$text_list['avatar']['src_path'] ="img/avatar.jpg";//资源图路径$text_list['avatar']['x'] =100;$text_list['avatar']['y'] =200;$text_list['avatar']['w'] =100;$text_list['avatar']['h'] =100; $text_list['avatar']['opacity'] =100; //资源图片透明度water_text($text_list);/*给图片加文字水印的方法*/function water_text($text_list) { $dst_path = $text_list[0]['dst_path']; $dst = imagecreatefromstring(file_get_contents($dst_path)); /*imagecreatefromstring()--从字符串中的图像流新建一个图像,返回一个图像标示符,其表达了从给定字符串得来的图像 图像格式将自动监测,只要php支持jpeg,png,gif,wbmp,gd2.*/ foreach($text_list as $key=> $text) { //如果是数字就处理一下 数字表示批量水印文字 if(is_numeric($key)) { $black = imagecolorallocate($dst, $text['color'][0], $text['color'][1], $text['color'][2]); imagefttext($dst, $text['size'], $text['angle'], $text['x'], $text['y'], $black, $text['font_file'], $text['content']); } } //获取图片原始信息 $src_info = getimagesize ( $text_list['avatar']['src_path'] ); // 创建图片的实例 $src = imagecreatefromstring ( file_get_contents ( $text_list['avatar']['src_path'] ) ); // 创建一个彩色的底图 $image = imagecreatetruecolor ( $text_list['avatar']['w'] , $text_list['avatar']['h'] ); // 设定水印图片大小 imagecopyresized ( $image, $src, 0, 0, 0, 0, $text_list['avatar']['w'], $text_list['avatar']['h'], $src_info [0], $src_info [1] ); // copy图片并且重置图片大小 // 将水印图片复制到目标图片上,最后个参数是设置透明度,可以半透明效果 imagecopymerge ( $dst, $image, $text_list['avatar']['x'] , $text_list['avatar']['y'] , 0, 0, $text_list['avatar']['w'] , $text_list['avatar']['h'] , $text_list['avatar']['opacity'] ); /*imagefttext($img,$size,$angle,$x,$y,$color,$fontfile,$text) $img由图像创建函数返回的图像资源 size要使用的水印的字体大小 angle(角度)文字的倾斜角度,如果是0度代表文字从左往右,如果是90度代表从上往下 x,y水印文字的第一个文字的起始位置 color是水印文字的颜色 fontfile,你希望使用truetype字体的路径*/ list($dst_w, $dst_h, $dst_type) = getimagesize($dst_path); /*list(mixed $varname[,mixed $......])--把数组中的值赋给一些变量 像array()一样,这不是真正的函数,而是语言结构,List()用一步操作给一组变量进行赋值*/ /*getimagesize()能获取到什么信息? getimagesize函数会返回图像的所有信息,包括大小,类型等等*/ //存储的文件名称 如果是windows系统存储中文文件名称需要转换为GBK编码 $name =iconv('UTF-8', 'GBK', "晨露微凉"); switch($dst_type) { case 1 : //GIF header("content-type:image/gif"); imagegif($dst, $name . ".gif");// /imagegif($dst); break; case 2 : //JPG header("content-type:image/jpeg"); imagejpeg($dst, "./inviter/".$name . ".jpg"); //imagejpeg($dst); break; case 3 : //PNG header("content-type:image/png"); imagepng($dst, "./inviter/".$name . ".png"); //imagepng($dst); break; default : break; /*imagepng--以PNG格式将图像输出到浏览器或文件 imagepng()将GD图像流(image)以png格式输出到标注输出(通常为浏览器),或者如果用filename给出了文件名则将其输出到文件*/ } imagedestroy($dst);}
从网上copy而来,具体来源补课追踪,加一改良,留待后续完善
0 0
- php 图片水印 文字水印
- PHP水印图片文字
- php 水印文字
- php 文字水印
- php生成 文字水印 图片水印
- php生成图片文字水印
- 使用PHP制作文字水印
- php文字水印和php图片水印实现代码
- php文字水印和php图片水印实现代码
- PHP给图片加文字水印和图片水印
- php 图片水印+文字水印函数,但是不能设置透明
- PHP 文字水印,缩略图,图片水印实现类
- php之文字水印-图片水印-图片裁剪
- php如何给pdf加上文字水印和图片水印
- PHP图片添加文字水印和图片水印
- PHP 生成文字及图片水印
- php 之 水印文字和缩略图
- php给图片加文字水印
- jquery-validation输出提示信息美化
- Android多项目依赖在Eclipse中无法关联源代码的问题解决 Ctril 点不进去的解决方法
- android 数据存储之SharePreference 的几种方式
- 虚拟机vmware 安装Ubuntu上不了网
- Android 关于屏幕适配
- php 水印文字
- URL 对特殊字符的处理
- illustrator快捷键整理
- android中跨进程通讯的4种方式
- 面试大全
- 完美实现同时分享图片和文字(Intent.ACTION_SEND)
- android XML解析之DOM解析方式
- Android动画效果translate、scale、alpha、rotate详解
- Android项目能运行,上传svn后再下载却不能运行