推荐试用WMThumbnail类,自己goolge一下使用方法.

解决方案 »

  1.   

    类包下载地址:http://www.phpclasses.org/browse/package/1324.html
    应用举例:
    require_once(ROOT_DIR."/class/WMThumbnail/class.WMThumbnail.inc.php");
    $pic=ROOT_DIR."/image/duomo/7.jpg";
    $thumbnail = new WMThumbnail($pic, 0);
    $logo=ROOT_DIR."/image/Bomb9.jpg";
    $thumbnail->addLogo($logo, 3, 1);$mix = $thumbnail->save(ROOT_DIR."/image/new.jpg", 85);
      

  2.   

    /**
    * 对一个指定目录内的所有图片生成缩略图,并把缩略图copy到指定目录
    * 该缩略图放在指定的最大宽度和最大高读内
    *
    * @param string  $fromDir 操作的目标目录
    * @param integer $maxWidth 缩略图的最宽部分的宽度
    * @param integer $maxHeight 缩略图的最高部分的高度
    * @param string  $quality 图片质量
    * @return boolean
    */
    function buildMini($fromDir, $toDir, $maxWidth = 160, $maxHeight = 120, $quality = 85){
    $postfix = "s".$maxWidth."x".$maxHeight; require_once(CMS_ROOT_DIR."/class/Utils/WMThumbnail/class.WMThumbnail.inc.php");
    if(!is_dir($fromDir)) die("不存在源图片路径");
    if(!is_dir($toDir)) mkdir($toDir) or die("不能建立目标目录存放缩略图!<BR>\r\n");
    $d = dir($fromDir);
    while(false!=($entry=$d->read())){
    if( ($entry==".") || ($entry=="..") ) continue;
    if( is_dir($entry) ) continue;
            $suffix = substr($entry,-3);
    if(in_array(strtolower($suffix),array('jpg','png','gif','jpeg'))){
    $thumbnail = new WMThumbnail($fromDir.$entry, 0);
    $thumbnail->setMaxWidth($maxWidth);
    $thumbnail->setMaxHeight($maxHeight); $mainName = substr($entry,0,-4);
    $extName  = substr($entry,-4);
    $toFileName = $mainName.$postfix.$extName; // 缩略图文件名 $mix = $thumbnail->save($toDir."/".$toFileName, $quality);
    chmod ($toDir."/".$toFileName, 0777);
    }
    }
    }