Ja, du skal bare lave et resize at det originale billede og så vise den nye thumbnail med et link til originalen. Her er en klasse der kan bruges, du kan se den i funktion her:
http://kentung.f2o.org/scripts/thumbnail/sample.phpOg klassen :)
<?
##############################################
# Shiege Iseng Resize Class
# 11 March 2003
# shiegege@yahoo.com
#
http://kentung.f2o.org/scripts/thumbnail/################
# Thanks to :
# Dian Suryandari <dianhau@yahoo.com>
/*############################################
Sample :
$thumb=new thumbnail("./shiegege.jpg"); // generate image_file, set filename to resize
$thumb->size_width(100); // set width for thumbnail, or
$thumb->size_height(300); // set height for thumbnail, or
$thumb->size_auto(200); // set the biggest width or height for thumbnail
$thumb->jpeg_quality(75); // [OPTIONAL] set quality for jpeg only (0 - 100) (worst - best), default = 75
$thumb->show(); // show your thumbnail
$thumb->save("./huhu.jpg"); // save your thumbnail to file
----------------------------------------------
Note :
- GD must Enabled
- Autodetect file extension (.jpg/jpeg, .png, .gif, .wbmp)
but some server can't generate .gif / .wbmp file types
- If your GD does not support 'ImageCreateTrueColor' function,
change one line from 'ImageCreateTrueColor' to 'ImageCreate'
(the position in 'show' and 'save' function)
*/############################################
class thumbnail
{
var $img;
function thumbnail($imgfile)
{
//detect image format
$this->img["format"] = ereg_replace(".*\.(.*)$","\\1",$imgfile);
$this->img["format"] = strtoupper($this->img["format"]);
if ($this->img["format"] == "JPG" || $this->img["format"]=="JPEG") {
//JPEG
$this->img["format"] = "JPEG";
$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);
} elseif ($this->img["format"] == "WBMP") {
//WBMP
$this->img["format"] = "WBMP";
$this->img["src"] = ImageCreateFromWBMP ($imgfile);
} else {
//DEFAULT
echo "Not Supported File";
exit();
}
@$this->img["lebar"] = imagesx($this->img["src"]);
@$this->img["tinggi"] = imagesy($this->img["src"]);
//default quality jpeg
$this->img["quality"] = 75;
}
function size_height($size = 100)
{
//height
$this->img["tinggi_thumb"] = $size;
@$this->img["lebar_thumb"] = ($this->img["tinggi_thumb"]/$this->img["tinggi"])*$this->img["lebar"];
}
function size_width($size = 100)
{
//width
$this->img["lebar_thumb"] = $size;
@$this->img["tinggi_thumb"] = ($this->img["lebar_thumb"]/$this->img["lebar"])*$this->img["tinggi"];
}
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 = 75)
{
//jpeg quality
$this->img["quality"] = $quality;
}
function show()
{
//show thumb
@Header("Content-Type: image/".$this->img["format"]);
/* change ImageCreateTrueColor to ImageCreate if your GD not supported ImageCreateTrueColor function*/
$this->img["des"] = ImageCreateTrueColor($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"]);
} elseif ($this->img["format"] == "WBMP") {
//WBMP
imageWBMP($this->img["des"]);
}
}
function save($save = "")
{
//save thumb
if (empty($save)) $save=strtolower("./thumb.".$this->img["format"]);
/* change ImageCreateTrueColor to ImageCreate if your GD not supported ImageCreateTrueColor function*/
$this->img["des"] = ImageCreateTrueColor($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");
} elseif ($this->img["format"] == "WBMP") {
//WBMP
imageWBMP($this->img["des"],"$save");
}
}
}
?>