1. 云栖社区>
  2. PHP教程>
  3. 正文

ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法

作者:用户 来源:互联网 时间:2017-12-01 14:45:18

方法提示文字水印

ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法 - 摘要: 本文讲的是ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法,本文实例讲述了ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法。分享给大家供大家参考。具体如下:一、问题描述:ThinkPHP做文字水印 ,今天做一个电子请帖,就

本文实例讲述了ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法。分享给大家供大家参考。具体如下:

一、问题描述:

ThinkPHP做文字水印 ,今天做一个电子请帖,就把祝福语贴到图片上面,发现一直报错是取不到图片类型,比如gif,jpg等,并提示call an undefined function exif_imagetype()。

二、解决方法:

出现这个错误就是php.in 配置问题,打开即可:打开扩展 extension=php_exif.dll 如果再不行就把extension=php_mbstring.dll ,放到extension=php_exif.dll前边

注意:extension=php_exif.dll 扩展要打开

类文件:wptext_class.php代码如下:
<?php/*PHP添加文字水印类 V1.0作者:Yu Tiedun邮箱:修改日期:2010-03-07支持图片格式:gif, jpg, png水印的位置自己根据需要调整如能修改得更好,请发一份给我*/class WaterPrint{//类开始    public $text, $color, $size, $font, $angle, $px, $py, $im;//要添加的文字 public function GetWpText($text){   $this->text = $text;}//添加文字的颜色public function GetFtColor($color){   $this->color = $color;}//添加文字的字体public function GetFtType($font){   $this->font = $font;}  //添加文字的大小public function GetFtSize($size){   $this->size = $size;}//文字旋转的角度public function GetTtAngle($angle){   $this->angle = $angle;}//添加文字的位置public function GetTtPosit(){   $this->px = 10;   $this->py = imagesy($this->im) - 20;}//添加文字水印 public function AddWpText($pict){   $ext = exif_imagetype($pict);    switch ($ext) {   case 1:   $picext = "gif";    $this->im = imagecreatefromgif($pict);    break;   case 2:   $picext = "jpg";    $this->im = imagecreatefromjpeg($pict);    break;   case 3:   $picext = "png";    $this->im = imagecreatefrompng($pict);    break;   default:   $this->Errmsg("不支持的文件格式。");    break;   }   //$this->picext = $picext;   $this->GetTtPosit();   $im   = $this->im;   $size = $this->size;   $angle= $this->angle;   $px   = $this->px;   $py   = $this->py;   $color= $this->color;   $font = $this->font;   $text = $this->text;   $color= imagecolorallocate($im, 255, 0, 0);   imagettftext($im, $size, $angle, $px, $py, $color, $font, $text);   switch ($picext) {   case "gif":   imagegif($im, $pict);    break;   case "jpg":   imagejpeg($im, $pict, 100);    break;   case "png":      imagealphablending($im, false);imagesavealpha($im, true);       imagepng($im, $pict);    break;   }   imagedestroy($im);}//错误信息提示 public function Errmsg($msg){    echo "<script language='javascript'>alert('".$msg."');</script>";}//类结束 }?>

调用页面:index.php代码如下:

<?phpheader("Content-type: text/html; charset=gbk");require("wptext_class.php");$pict = "images/button2.png"; //目标图片//$text = "XP/Vista/Win7"; //要添加的文字$text = "文字水印测试";$text = iconv("gb2312","utf-8",$text); //防止中文乱码$size = 20; //文字大小$font = "c:/windows/fonts/arial.ttf"; //字体$angle = 0; //旋转角度,逆时针$wptext = new WaterPrint();$wptext->GetWpText($text);$wptext->GetFtSize($size);$wptext->GetFtType($font);$wptext->GetTtAngle($angle);$wptext->AddWpText($pict);$wptext = null;?><a href="images/button2.png" target="_blank">查看结果</a>

希望本文所述对大家的ThinkPHP框架程序设计有所帮助。

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索方法 , 提示 , 文字 水印 ,以便于您获取更多的相关知识。