Использование:
$thumbnail = new thumbnail;
$thumbnail->open_save(\'1.jpg\', \'copy.jpgf\', $size, 2);
$size = размер полученной картинки.

                        
class thumbnail 
{
var $imgfile;

function thumb($imgfile)
{
if (!file_exists($imgfile)) die ("Cannot read the file!");
//detect image format
//$this->img["format"] = ereg_replace(".*\.(.*)$","\\1",$imgfile);
$hz = explode(".", $name);
$this->img["format"] = $hz[sizeof($hz-1)];
$this->img["format"] = strtoupper($this->img["format"]);
if ($this->img["format"]=="JPG" || $this->img["format"]=="JPEG")
{
//JPEG
$this->img["format"]="JPG";
$this->img["src"] = ImageCreateFromJPEG($imgfile);
}
elseif ($this->img["format"]=="PNG")
{
//PNG
$this->img["format"]="PNG";
$this->img["src"] = ImageCreateFromPNG($imgfile);
}
elseif ($this->img["format"]=="GIF")
{
//GIF
$this->img["format"]="GIF";
$this->img["src"] = ImageCreateFromGIF($imgfile);

}
else {
//DEFAULT
echo "Not Supported File! Thumbnails can only be made from .gif, .jpg and .png images!";
exit();
}
$this->img["lebar"] = imagesx($this->img["src"]);
$this->img["tinggi"] = imagesy($this->img["src"]);
//default quality jpeg
$this->img["quality"]=100;
}

function size_auto($size=100)
{
//size
if ($this->img["lebar"]>=$this->img["tinggi"])
{
$this->img["lebar_thumb"]=$size;
$this->img["tinggi_thumb"] = ($this->img["lebar_thumb"]/$this->img["lebar"])*$this->img["tinggi"];
}
else
{
$this->img["tinggi_thumb"]=$size;
$this->img["lebar_thumb"] = ($this->img["tinggi_thumb"]/$this->img["tinggi"])*$this->img["lebar"];
}
}

function jpeg_quality($quality=100)
{
//jpeg quality
$this->img["quality"]=$quality;
}



function show($gd_version)
{
Header("Content-Type: image/".$this->img["format"]);
if($gd_version==2)
{
$this->img["des"] = imagecreatetruecolor($this->img["lebar_thumb"],$this->img["tinggi_thumb"]);
imagecopyresampled ($this->img["des"], $this->img["src"], 0, 0, 0, 0, $this->img["lebar_thumb"],$this->img["tinggi_thumb"], $this->img["lebar"], $this->img["tinggi"]);
}
if($gd_version==1)
{
$this->img["des"] = imagecreate($this->img["lebar_thumb"],$this->img["tinggi_thumb"]);
imagecopyresized ($this->img["des"], $this->img["src"], 0, 0, 0, 0, $this->img["lebar_thumb"],$this->img["tinggi_thumb"], $this->img["lebar"], $this->img["tinggi"]);
}
if ($this->img["format"]=="JPG" || $this->img["format"]=="JPEG")
{
//JPEG
imageJPEG($this->img["des"],"",$this->img["quality"]);
}
elseif ($this->img["format"]=="PNG")
{
//PNG
imagePNG($this->img["des"]);
}
elseif ($this->img["format"]=="GIF")
{
//GIF
imageGIF($this->img["des"]);
}
}

function save($save="",$gd_version)
{

if($gd_version==2)
{
$this->img["des"] = imagecreatetruecolor($this->img["lebar_thumb"],$this->img["tinggi_thumb"]);
@imagecopyresampled ($this->img["des"], $this->img["src"], 0, 0, 0, 0, $this->img["lebar_thumb"], $this->img["tinggi_thumb"], $this->img["lebar"], $this->img["tinggi"]);
}
if($gd_version==1)
{
$this->img["des"] = imagecreate($this->img["lebar_thumb"],$this->img["tinggi_thumb"]);
@imagecopyresized ($this->img["des"], $this->img["src"], 0, 0, 0, 0, $this->img["lebar_thumb"], $this->img["tinggi_thumb"], $this->img["lebar"], $this->img["tinggi"]);
}
if ($this->img["format"]=="JPG" || $this->img["format"]=="JPEG")
{
//JPEG
imageJPEG($this->img["des"],"$save",$this->img["quality"]);
}
elseif ($this->img["format"]=="PNG")
{
//PNG
imagePNG($this->img["des"],"$save");
}
elseif ($this->img["format"]=="GIF")
{
//GIF
imageGIF($this->img["des"],"$save");
}
}


function open_save($open, $save, $size, $gd)
{
$this->thumb($open);
$this->size_auto($size);
$this->save($save, $gd);
}

}
3 9 0
Без комментариев...