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

[ Zurück zur Übersicht ]
Zurück: Datenbankverbindungen Weiter: Download verstecken
Stichworte: php thumbnail erzeugen, php thumbnails erzeugen, thumbnails erzeugen, php thumbnail, PHP Thumbnail erzeugen, php thumbnails, php thumbnail erstellen, thumbnail php, testing, t, thumbnail erzeugen, php thumbnails generieren, php thumb erzeugen, PHP Thumbnail, https://www google com/
bimbel.de