1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
|
<?php
// Diese Funktion gibt es im Original unter [url]www.codeschnipsel.net[/url]
// Ich habe sie ein wenig modifiziert
function mkthumb($img_src, // Dateiname
$img_width = "400", // max. Größe in x-Richtung
$img_height = "400", // max. Größe in y-Richtung
$folder_scr = "pictures", // Ordner der normalen Bilder
$des_src = "thumbs") // Ordner der Thumbs
{
// Größe und Typ ermitteln
list($src_width, $src_height, $src_typ) = getimagesize($folder_scr."/".$img_src);
// neue Größe bestimmen
if($src_width >= $src_height)
{
$new_image_width = $img_width;
$new_image_height = $src_height * $img_width / $src_width;
}
if($src_width < $src_height)
{
$new_image_height = $img_width;
$new_image_width = $src_width * $img_height / $src_height;
}
if($src_typ == 1) // GIF
{
$image = imagecreatefromgif($folder_scr."/".$img_src);
$new_image = imagecreate($new_image_width, $new_image_height);
imagecopyresampled($new_image, $image, 0, 0, 0, 0, $new_image_width,$new_image_height, $src_width, $src_height);
imagegif($new_image, $des_src."/".$img_src, 100);
imagedestroy($image);
imagedestroy($new_image);
return true;
}
elseif($src_typ == 2) // JPG
{
$image = imagecreatefromjpeg($folder_scr."/".$img_src);
$new_image = imagecreatetruecolor($new_image_width, $new_image_height);
imagecopyresampled($new_image, $image, 0, 0, 0, 0, $new_image_width,$new_image_height, $src_width, $src_height);
imagejpeg($new_image, $des_src."/".$img_src, 100);
imagedestroy($image);
imagedestroy($new_image);
return true;
}
elseif($src_typ == 3) // PNG
{
$image = imagecreatefrompng($folder_scr."/".$img_src);
$new_image = imagecreatetruecolor($new_image_width, $new_image_height);
imagecopyresampled($new_image, $image, 0, 0, 0, 0, $new_image_width,$new_image_height, $src_width, $src_height);
imagepng($new_image, $des_src."/".$img_src, 100);
imagedestroy($image);
imagedestroy($new_image);
return true;
}
else
{
return false;
}
}
?> |