Codeschnipsel - Thumbnail Funktion
Hier meine kleine Funktion um Thumbnails für die Dateiformate (JPG, GIF, PNG) zu erstellen:
Höhe & Breite wird zum Verhältnis errechnet!
Code:<?php ########################################################################################################################### # Thumbnail Funktion V.0.9 by PA-S.de ########################################################################################################################### # Thumbnail Funktion V.0.9 by PA-S.de # Copyright 2003-2007 PA-S.de # Script Url: www.pa-s.de -- 5.05.07 # Kontakt: kontakt [@] pa-s [.] de # Dieser unsichtbare Verweis darf nicht entfernt werden! ########################################################################################################################### // Funktion function thumbpas($q, $z, $h, $b) { /* Erkärung $q = Quellbild $z = Zielbild $h = MaxHöhe $b = Maxbreite */ if(file_exists($z) || !file_exists($q)){ return false; }else{ $heuri=getimagesize($q); if($heuri[2] == 2){ $Img = imagecreatefromjpeg($q); } if($heuri[2] == 1){ $Img = imagecreatefromgif($q); } if($heuri[2] == 3){ $Img = imagecreatefrompng($q); } if($heuri[0] > $b){ $n_h = intval($heuri[1]*$b/$heuri[0]); $n_b = $b; } if($n_h == NULL){ if($heuri[1] > $h){ $n_b = intval($heuri[0]*$h/$heuri[1]); $n_h = $h; }}else{ if($n_h > $h){ $n_b = intval($n_b*$h/$n_h); $n_h = $h; } } if($n_h == NULL){ $n_h = $heuri[1]; } if($n_b == NULL){ $n_b = $heuri[0]; } $pas = imagecreatetruecolor($n_b, $n_h); imagecopyresampled($pas, $Img, 0, 0, 0, 0, $n_b, $n_h, $heuri[0], $heuri[1]); if($heuri[2] == 2){ imagejpeg($pas, $z); } if($heuri[2] == 1){ imagegif($pas, $z); } if($heuri[2] == 3){ imagepng($pas, $z); } imagedestroy($pas); return true; }} // ENDE ?>
Benutzung:
Code:<?php // Beispiel: // Zielordner muss CHMOD 777 haben! // thumbpas(QUELLE, ZIEL, MAXHÖHE, MAXBREITE) if(thumbpas('bilder/bild.jpg', 'bilder/bild_thumb.jpg', '150', '100')){ echo 'Thumb erstellt!'; }else{ echo 'Thumb schon vorhanden // Fehler aufgetreten!'; } // ENDE ?>