php上传图片加上文字水印
2017-05-25 17:37
405 查看
第一次写博客,今天做了个上传图片加文字的功能,做为一个php的新手费了一个下午的时间总算也是把功能实现了,期间遇到了很多困难和各种抓瞎 ,为了避免以后再次抓瞎,所以我打算把它们记录下来。下面上代码 页面:
<form action="index.php" method="post" enctype="multipart/form-data"> <input type="file" name="file" /><br> <input type="submit" name="submit" value="提交"/> </form>
php做上传的代码:
<?php /*include('ImageText.class.php');*/ if(!empty($_FILES)){ //print_r($_FILES); if($_FILES['file']['type']=='image/png' ||$_FILES['file']['type']=='image/jpeg' || $_FILES['file']['type']=='image/jpg' ||$_FILES['file']['type']=='image/gif' ||$_FILES['file']['type']=='image/bmp' ){ if($_FILES['file']['size'] < 204800){ $filename = $_FILES['file']['name']; $files = explode('.',$filename); $type = end($files); $time = date('YmdHis'); $head = 'uploadImage/'; $destination = $time.'_'.rand(100000, 999999).'.'.$type; move_uploaded_file($_FILES['file']['tmp_name'], $head.$destination); $cla= new ImageText(); $im= $cla->getImageText($head.$destination); echo '<img src="'.$head.$destination.'" rel="图片加水印文">'; }else{ return $_FILES['file']['error'] = 2; } }else{ return $_FILES['file']['error'] = 1; } } ?>加文字水印的代码:
<?php class ImageText { function getImageText($destination){ //Header ('Content-type: image/jpg'); 定义页面头 表明这个页面是用来处理图片 echo $destination."<br>"; //文件名 $im = imagecreatefromjpeg($destination); //需要先开启gb库,才会有作用;关闭状态下程序进行到这里会结束,不会抛出错误也不会有任何返回值; if($im) { //$im = imagecreatetruecolor(500, 300); 定义一个黑色背图片 $textColor = imagecolorallocate($im, 0, 0, 255);//设定字体颜色 $font = "C://windows/fonts/simhei.ttf";//TrueType字体路径(一般windows自带) $text='中国mm'; // $text = mb_convert_encoding($text,'gbk','utf-8');编码转换 //iconv('gbk','utf-8',$text);同样是编码转换 //imagestring($im, 5, 0, 0, $s, $tc);这个函数图片不能输出中文字符 imagettftext($im,28,4,40,40,$textColor,$font,$text);//用 TrueType 字体向图像写入文本,可以输出中文 imagejpeg($im,$destination);//生成jpg各式图片 imagedestroy($im);//释放与 image 关联的内存 }else{ echo '没值'; } return $im; } } ?>需要注意的是在使用gb库函数时,切记要先开启php的gb库支持。
开启gb库的方法:找到php.ini文件,打开内容 找到;extension=php_gb2.dll 把最前面的分号";"去掉,再保存,如果本来就没有分号,那就不用管
相关文章推荐
- PHP图片上传并且加文字水印效果
- PHP 给上传到网页的图片添加水印(文字和图像)
- php gd2 上传图片/文字水印/图片水印/等比例缩略图/实现代码
- ASP.NET(C#)上传图片加上文字或图片水印
- PHP图片上传加水印(文字水印和图像水印)
- php gd2 上传图片/文字水印/图片水印/等比例缩略图/实现代码
- php图像处理类,上传,压缩,添加文字、图片水印
- PHP 上传图片,生成水印,支持文字, gif, png
- php实现图片上传时添加文字和图片水印技巧
- php gd2 上传图片/文字水印/图片水印/等比例缩略图/实现代码
- php实现图片上传时添加文字和图片水印技巧
- PHP 上传图片,生成水印,支持文字, gif, png
- PHP 上传图片,生成水印,支持文字, gif, png
- PHP 上传图片,生成水印,支持文字, gif, png
- 使用FileUpload控件上传图片并自动生成缩略图、自动生成带文字和图片的水印图
- 使用FileUpload控件上传图片并自动生成缩略图、自动生成带文字和图片的水印图(转)
- 为freetextbox1.6.5上传图片加上水印
- 给上传图片加个图片水印,文字水印的功能
- 使用FileUpload控件上传图片并自动生成缩略图、自动生成带文字和图片的水印图
- 随时给自己贴的图片加文字的php水印