日期:2014-05-17  浏览次数:20525 次

如何修改fckeditor上传图片的宽和高
在使用fckeditor的上传图片的功能时,上传的图片会以原来的大小存放,现在我想在上传的图片存放前改变其宽和高,变成指定大小的形式,请问在那个文件中的那个方法前去操作。 多谢指点,一经验证成功,马上结贴给分!

------解决方案--------------------
图片缩放类

PHP code
<?
class Cimgtoico
{
 var $srcimg;
 var $icoName;
 var $icoWidth;
 var $icoHeight;
 var $icoPath;
 var $srcPath;
 var $icoType;
 var $img;
function Cimgtoico($srcimg='',$icoPath,$icoWidth,$icoHeight)
{
    $this->srcimg=$srcimg;
    $this->srcPath=$srcPath;
    $this->icoPath=$icoPath;
    $this->icoWidth=$icoWidth;
    $this->Height=$icoHeight;
}
function CreateIco()
{
 if($this->srcimg!="")
    {
    $img_info=getimagesize($this->srcimg);
    $filen="ico".date(YmdHis);    
    switch ($img_info[2]) {
    case 1:
    $this->icoType="gif";
    
    $this->img = imagecreatefromgif($this->srcimg); 
    break;
    case 2:
    $this->icoType= "jpg";
    
    $this->img=imagecreatefromjpeg($this->srcimg); 
    break;
    case 3:
    $this->icoType= "png";
    $this->img= imagecreatefrompng($this->srcimg); 
    break;
    }
   
    $this->ResizeImage($this->icoWidth,$this->Height,$this->icoPath.$filen); 
    ImageDestroy ($this->img);
    $this->icoName=$filen.".jpg";
     return $this->icoName;
   }else
   {
     return "";
   }   
}
function ResizeImage($maxwidth,$maxheight,$name){ 
        $width = imagesx($this->img); 
        $height =imagesy($this->img); 
        if(($maxwidth && $width > $maxwidth) || ($maxheight && $height > $maxheight)){ 
        if($maxwidth && $width > $maxwidth){ 
            $widthratio = $maxwidth/$width; 
            $RESIZEWIDTH=true; 
        } 
        if($maxheight && $height > $maxheight){ 
            $heightratio = $maxheight/$height; 
            $RESIZEHEIGHT=true; 
        } 
        if($RESIZEWIDTH && $RESIZEHEIGHT)
         { 
            if($widthratio < $heightratio)
              { 
                      $ratio = $widthratio; 
              }
          else{ 
               $ratio = $heightratio; 
              } 
        }
      elseif($RESIZEWIDTH)
       { 
         $ratio = $widthratio; 
       }elseif($RESIZEHEIGHT)
       { 
        $ratio = $heightratio; 
       } 
       $newwidth = $width * $ratio; 
      $newheight = $height * $ratio; 
      if(function_exists("imagecopyresampled"))
      { 
       $newim = imagecreatetruecolor($newwidth, $newheight);
       imagecopyresampled($newim, $this->img, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); 
      }else{ 
       $newim = imagecreate($newwidth, $newheight); 
       imagecopyresized($newim, $this->img, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); 
      } 
       ImageJpeg ($newim,$name.".jpg"); 
       ImageDestroy ($newim); 
    }else{ 
     ImageJpeg ($this->img,$name.".jpg"); 
     ImageDestroy ($newim);
    } 
 } 
}
/*
$ico=new Cimgtoico("./images/1Yuan.jpg","./images/",100,100);
$ico->CreateIco();
*/
?>