Thumbnails erzeugen


Mit PHP lassen sich sehr leicht Thumbnails ("Daumennagel" - verkleinerte Vorschau eines Bildes) erzeugen. Hierzu wird als erstes eine Variable mit dem Pfad zum Bild erstellt, dieses kann auch über HTTP abgerufen werden. Danach wird die Größe des Bildes ausgelesen und in Variablen zwischengespeichert:
Php-Code:

<?php 

$groesse 
125// Neue Maximalbreite bzw. -höhe
$bild['pfad'] = "test.jpg";
$info getimagesize($bild['pfad']);
$bild['breite'] = $info[0];
$bild['hoehe'] = $info[1];
?>

Danach wird das Seitenverhältnis des Bildes bestimmt und die Abmessungen des Thumbnails berechnet.
Php-Code:

<?php 

if ($bild['breite']>$bild['hoehe'])
{
    
$neuebreite $groesse;
    
$neuehoehe round($bild['hoehe']/$bild['breite']*$groesse);
}
else
{
    
$neuehoehe $groesse;
    
$neuebreite round($bild['breite']/$bild['hoehe']*$groesse);
}
?>

Nach diesen Berechnungen kann nun das eigentliche Bild erzeugt und ausgegeben werden.
Php-Code:

<?php 

$quelle 
imagecreatefromjpeg($bild['pfad']); // liest das Originalbild ein
$ziel imagecreatetruecolor($neuebreite,$neuehoehe); // Erzeugt das Bild mit den Abmessungen des Thumbnails

imagecopyresampled($ziel,$quelle,0,0,0,0,$neuebreite,$neuehoehe,$bild['breite'],$bild['hoehe']);
/*
Kopiert das Originalbild in das neue Bild unter Berücksichtigung der neuen Größe. 
Sollte die installierte GD-Lib nicht aktuell genug sein, kann stattdessen auch
imagecopyresized($ziel,$quelle,0,0,0,0,$neuebreite,$neuehoehe,$bild['breite'],$bild['hoehe']);
verwendet werden, allerdings ist dies qualitativ schlechter
*/

imagejpeg($ziel,'thumbnail.jpg',80); // Speichert das Bild auf dem Server im aktuellen Verzeichnis
/*
Alternativ kann das Bild auch direkt an den Browser ausgegeben werden:
header("Content-type: image/jpeg");
imagejpeg($ziel,"",80);
*/
?>


Verwendete Funktionen:
getimagesize()
imagecreatefromjpeg()
imagecreatetruecolor()
imagecopyresampled()
imagejpeg()

Weitere Informationen kann man sich in folgendem Buch holen, das liegt bei mir auch immer griffbereit zur Referenz an der Seite:
PHP 5 / MySQL 4 Studienhandbuch

Kommentare

    Sie haben Fragen oder Anregungen zu diesem Artikel? Nutzen sie doch die Kommentarfunktion:






    [ Zurück zur Übersicht ]
    Zurück: Datenbankverbindungen Weiter: Download verstecken
    Stichworte: php thumbnails erzeugen, thumbnails erzeugen, php thumbnail erzeugen, thumbnail erzeugen, thumbnails erzeugen php, thumbnail erzeugen php, php thumbnail, php thumbnails generieren, thumbnail php, php thumbnails, Thumbnails mit PHP erzeugen, php thumbnail generieren, thumbnails php, php thumb erzeugen, tp://www google de/
    bimbel.de