程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> ThinkPHP做文字水印時提示call an undefined function exif_imagetype()解決方法

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

編輯:PHP綜合

本文實例講述了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代碼如下:

復制代碼 代碼如下:<?php
header("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框架程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved