Buffer

Creare Thumbnails al volo con PHP

php 150x150 Creare Thumbnails al volo con PHP
A volte può servire creare le thumbnails delle foto che abbiamo caricato sul sito, per crearle on the fly, senza doverle salvare sul disco del server (anche se in molti casi, per non dare lavoro inutile al processore è sicuramente meglio salvarle…).

Possiamo utilizzare il codice che troviamo qui sotto, è sufficiente richiamarlo dal tag <img> utilizzando per la proprietà src una stringa tipo ‘imgres.php?file=nomefileimmagine’, volendo possiamo passare come parametro anche dimensione della thumb da creare…:

< ?php
// il file di cui dobbiamo creare la thumbnail
$file = $_GET['file'];
 
//Questo restringe l'immagine in output al 25% dell'originale
$size = 0.25;
 
// io di solito uso i .jpg, ma si possono utilizzare anche png e gif
header('Content-type: image/jpeg');
 
// setto i parametri per il ridimensionamento
list($width, $height) = getimagesize($file);
$modwidth = $width * $size;
$modheight = $height * $size;
 
// Creo il canvas (la tela)
$tn= imagecreatetruecolor($modwidth, $modheight);
$source = imagecreatefromjpeg($file);
 
// Ridimensiono l'immagine per far sì che combaci con il canvas
imagecopyresized($tn, $source, 0, 0, 0, 0, $modwidth, $modheight, $width, $height);
 
// Butto in output l'immagine creata in formato jpg, volendo si può fare anche in png o gif
imagejpeg($tn);
?>



Info su Mauro De Filippis

Mauro De Filippis
Laureato in Ingegneria Informatica nel 2008 presso l'Università degli Studi di Lecce con una tesi in Processi di Produzione Robotizzati dal titolo "Integrazione delle tecniche di progettazione del ciclo di lavorazione con programmazione della produzione”. Le mie attività principali sono :
  • sviluppo di applicativi ANSI C per terminali POS basati su processori ARM Risc 32Bit con 2-4 MB di Ram (progettazione, sviluppo e test delle applicazioni )
  • sviluppo in ambiente .NET
  • sviluppo Web in ambiente PHP, ASP
  • Installazione, progettazione, utilizzo di Db MS SQL Server, Mysql, Acces , Oracle
Da anni mi occupo di CMS Open Source, in particolare di Joomla e Wordpress.
Mia è la Guida Joomla 2.5 ed il Corso online Joomla! 2.5
Mi occupo anche di LMS in particolare di Moodle e Docebo.
Questa voce è stata pubblicata in PHP e contrassegnata con , . Contrassegna il permalink.

Lascia un Commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>