我已经按照http://www.cbohao.cn/html/19/n-119.html安装了Imagick,但是$bg = new Imagick();的PHP程序还是不能使用,我现在就是想用imagick加水印,谁知道在WINDOWS下怎么安装的,请帮忙
水印函数如下:
function waterMark($groundImage , $waterPos, $waterImage, $waterText, $textFont, $textColor,$minWidth,$minHeight,$alpha){ 
$isWaterImg = FALSE;$bg_h = $bg_w = $water_h = $water_w = 0;
//获取背景图的高,宽
if(is_file($groundImage) && !empty($groundImage)){   $bg = new Imagick();
   $bg ->readImage($groundImage);
   $bg_h = $bg->getImageHeight();
   $bg_w = $bg->getImageWidth();
}
//获取水印图的高,宽
if(is_file($waterImage) && !empty($waterImage)){
   $water = new Imagick($waterImage);
   $water_h = $water->getImageHeight();
   $water_w = $water->getImageWidth();
}
//如果背景图的高宽小于水印图的高宽或指定的高和宽则不加水印
if($bg_h < $minHeight || $bg_w < $minWidth || $bg_h < $water_h || $bg_w < $water_w ) {
   return ;
}else {
   $isWaterImg = TRUE;
}
//加水印
if($isWaterImg){  
   $dw = new ImagickDraw();  
   //加图片水印
   if(is_file($waterImage)){
    $water->setImageOpacity($alpha);
    $dw -> setGravity($waterPos);
    $dw -> composite($water->getImageCompose(),0,0,50,0,$water);
    $bg -> drawImage($dw);
    if(!$bg -> writeImage($groundImage)){
     return FALSE;
    }  
   }else{
    //加文字水印
    $dw -> setFontSize($textFont);
    $dw -> setFillColor($textColor);
    $dw -> setGravity($waterPos);
    $dw -> setFillAlpha($alpha);
    $dw -> annotation(0,0,$waterText);
    $bg -> drawImage($dw);
    if(!$bg -> writeImage($groundImage)){
     return FALSE;
    }
   }
}
}

解决方案 »

  1.   

    我用的是easy2php5但是它的phpinfo信息页非常简单,只有以下信息
    Easy2PHP: 
    Apache: Apache/2.2.6 (Win32) PHP/5.2.5 
    PHP: 5.2.6 
    MySQL: 5.0.45 
    PHPMyAdmin: 2.11.0 
    Zend Optimizer: 3.3.0 
    Server: 
    服务器时间: 2010年3月26日 10:41:32 
    服务器域名/IP地址: localhost(127.0.0.1) 
    服务器解译引擎: Apache/2.2.6 (Win32) PHP/5.2.5 
    WEB服务端口: 8080 
    网站文档目录: D:/software/Easy2PHP5 build 2/Easy2PHP5 build 2/WebSite 
      

  2.   

    看到了,下面还有PHPinfo的连接,没有看到magickwand这一项
      

  3.   

    那证明你没有安装成功, 你在php.ini文件中加过一行调用dll的文件吗?