自动批量生成缩略图

类别:编程语言 点击:0 评论:0 推荐:
是生成缩略图的
把文件放目录下
如果目录下有图片会自动生成小图片
适合批量生成小图,做图片站的能用的着吧.   <?php
$config = array();
$config['path'] = "./";
$config['t_width'] = 120;
$config['t_height'] = 98;
$config['ignore'] = array("",".","..");
$config['prefix'] = "thumb_";



$done = 0;
define("IMAGE_JPG", 2);
define("ENDL", "\n");

if($handle = opendir($config['path'])) {
    while(false !== ($file = readdir($handle))) {
        if(!array_search($file,$config['ignore'])) {
            
            list($im_width, $im_height, $type) = getimagesize($file);
            if($type != IMAGE_JPG) {
                continue;
            }
            
            $op .= "found -> <a href='{$file}'>$file</a>" . ENDL;
            $im = @imagecreatefromjpeg($file);
            if(!$im) {
                $op .= "fail  -> couldn't create sour image pointer." . ENDL;     
                continue;
            }
            
            if(file_exists($config['prefix'] . $file) || substr($file, 0, strlen($config['prefix'])) == $config['prefix']) {
                $op .= "note  -> this file has already got a thumbnail." . ENDL;     
                continue;
            }

            $to = imagecreatetruecolor($config['t_width'],$config['t_height']);
            if(!$to) {
                $op .= "fail  -> couldn't create dest image pointer." . ENDL;     
                continue;
            }            
            
            if(!imagecopyresampled($to, $im, 0, 0, 0, 0, $config['t_width'], $config['t_height'], $im_width, $im_height)) {
                $op .= "fail  -> couldn't create thumbnail. php fail." . ENDL;     
                continue;
            }
            
            //保存文件
            imagejpeg($to, $config['prefix'] . $file);
            $op .= "done  -> created thumb: <a href='{$config['prefix']}{$file}'>{$config['prefix']}{$file}</a>" . ENDL;     
            $done++;
        }
    }
}
closedir($handle);
$op .= "fin   -> {$done} file(s) written" . ENDL;

echo "<pre>";
echo $op;
echo "</pre>";

exit;

?>

本文地址:http://com.8s8s.com/it/it25785.htm