首页 > 语言 > PHP > 正文

php使用GD库实现文字图片水印及缩略图教程

2024-09-04 11:44:38
字体:
来源:转载
供稿:网友

缩略图可以通过gd库来实现,下面我们一起来看一个简单的php使用GD库实现文字图片水印及缩略图例子,希望此例子能够为大家带来有效的帮助.

我们要使用gd库就必须先打开gd库,具体如下.

Windows下开启PHP的GD库支持.

找到php.ini,打开内容,找到:

;extension=php_gd2.dll

把最前面的分号“;”去掉,再保存即可,如果本来就没有分号,那就是已经开启了.

一:添加文字水印,使用方法.

  1. require 'image.class.php' 
  2. $src="001.jpg"
  3. $content="hello"
  4. $font_url="my.ttf"
  5. $size=20; 
  6. $image=new Image($src); 
  7. $color=array
  8. 0=>255, 
  9. 1=>255, 
  10. 2=>255, 
  11. 2=>20 
  12. ); 
  13. $local=array
  14. 'x'=>20, 
  15. 'y'=>30 
  16. ); 
  17. $angle=10; 
  18. $image->fontMark($content,$font_url,$size,$color,$local,$angle); 
  19. $image->show(); 

二:图片缩略图,使用方法:

  1. require 'image.class.php' 
  2. $src="001.jpg"
  3. $image=new Image($src); 
  4. $image->thumb(300,200); 
  5. $image->show(); 

三:image.class.php

  1. class image{ 
  2. private $info
  3. private $image
  4. public function __contruct($src){ 
  5. $infogetimagesize($src); 
  6. $this->info=array
  7. 'width'=> $info[0], 
  8. 'height'=>$info[1], 
  9. 'type'=>image_type_to_extension($info[2],false), 
  10. 'mime'=>$info['mime'], 
  11.  
  12. ); 
  13. $fun="imagecreatefrom{$this->info['type']}"
  14.  
  15. $this->image= $fun($src); 
  16.  
  17.  
  18. //缩略图 
  19. public function thumd($width,$height){ 
  20. $image_thumb= imagecreatetruecolor($width,$height); 
  21. imagecopyresampled($image_thumb,$this->image,0,0,0,0,$width,$height,$this->info['width'],$this->info['height']); 
  22. imagedestroy($this->image); 
  23. $this->image=$image_thumb
  24.  
  25. //文字水印 
  26. public function fontMark($content,$font_url,$size,$color,$local,$angle){ 
  27.  
  28. $col=imagecolorallocatealpha($this->image,$color[0],$color[1],$color[2],$color[3]); 
  29. $text=imagettftext($this->image,$size,$angle,$local['x'],$local['y'],$col,$font_url,$content); 
  30. //输出图片 
  31. public function show() 
  32. header("Content-type:",$this->info['mime']); 
  33.  
  34. $func="image{$this->info['type']}"
  35. $func($this->image); 
  36.  
  37. public function save($nwename){ 
  38. $func="image{$this->info['type']}"
  39. //从内存中取出图片显示 
  40. $func($this->image); 
  41. //保存图片 
  42. $func($this->image,$nwename.$this->info['type']); 
  43. //Vevb.com 
  44. public function _destruct(){ 
  45.  
  46. imagedestroy($this->image); 
  47.  

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表