Magazine

PHP Snippets: ridimensionare immagini jpeg ed estrarne il thumbnail exif

Creato il 08 dicembre 2008 da Andreafortuna @AndyF

FileName: thumb.php

< ?php 

$im   = $_GET['im'];
$maxsize = $_GET['maxsize'];

if ($maxsize == '') {
   $image = exif_thumbnail($im, $width, $height, $type);

   if ($image) {
      header('Content-type: ' .image_type_to_mime_type($type));
      print $image;
   }
   else {
      print 'No thumbnail available';
   }   

} else {

$filename = $im;

$width  = $maxsize;
$height = $maxsize;

header('Content-type: image/jpeg');

list($width_orig, $height_orig) = getimagesize($filename);

if ($width & ($width_orig < $height_orig)) {
   $width = ($height / $height_orig) * $width_orig;
} else {
   $height = ($width / $width_orig) * $height_orig;
}

$image_p = imagecreatetruecolor($width, $height);
$image   = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

imagejpeg($image_p);
imagedestroy($image);
imageDestroy($image_p);
}
?>

utilizzo:

thumb.php?im=uploads/immagine.jpg&maxsize=100

ridimensiona l’immagine con il lato maggiore non superiore a 100 pixels.

Se non viene specificata la dimensione massima, viene estratto (se disponibile) il thumbnail Exif contenuto nel file Jpeg (metodo molto più veloce nel caso di immagini di un certo peso).


Pubblicato in: PHP, Programmazione Tagged: Exif, PHP, Thumbnails

Ritornare alla prima pagina di Logo Paperblog