Mit PHP eine Bildervorschau (Thumbnail) als Inline-Grafik in HTML erstellen
Der schnellste und einfachste Weg in PHP Thumbnails bzw eine Bildervorschau zu erzeugen ist die Klasse Imagick. Dieses Klasse ist eine der leistungsfähigsten Klassen in PHP rund um die Erzeugung und Manipulation von Bildern.
In diesem Beispiel wird aus der Datei, dessen Dateiname und Pfad, die in der Variablen $file enthalten ist geladen und anschließend ein Thumbnail in der größe 64:64 erzeugt ($img->cropThumbnailImage(64, 64)).
Dieses wird danach mit der Funktion base64_encode nach base64 kodiert und im Anschluss direkt mit data:image/gif;base64,{$thumbnail}" in das HTML eingebettet. Diese Methode bietet sich nur für kleine, eben Thumbnails an. Anderenfalls kann die lade Zeit der Seite negativ beeinflusst werden.
$img = new imagick($file);
$img->cropThumbnailImage(64, 64);
$img->setImageFormat( "png" ); # oder ein anderes bevorzugtes Format (gif, jpg,...)
$thumbnail = base64_encode($img->getImage());
echo <<<HTML
<img src="data:image/gif;base64,{$thumbnail}">
HTML;