Creare thumbnail con il plugin sfThumbnail di symfony

Anche questo weekend è giunto al termine, ma prima vi farò vedere come poter ridimensionare delle immagini utilizzando il plugin sfThumbnail.

  • installazione plugin
  • codice & funzioni del plugin

Installare il plugin per versioni di symfony > 1.0, bisogna semplicemente digitare da riga di comanda (posizionandosi nella cartella del progett) il comando :

symfony plugin:install sfThumbnailPlugin

e subito dopo eseguire il clear cache con

symfony cc

In questo esempio, viene eseguito un caricamento di un immagine da un form html e un successivo salvataggio della suddetta immagine. Dopo averla salvata, si recupera il nome, la si ridimensiona e la si sostituisce all’immagine salvata in precedenza. Vediamo come avviene il tutto.

//Il contenuto del FORM, contenuto in $form viene salvato ed assegnato alla variabile $picture.

$picture = $form->save();
/*Otteniamo il tipo dell’immagine appena salvata (in questo esempio, il nome dell’immagine è salvato nel campo name, per questo motivo viene effettuato un getName(). La variabile $_tmp è un array contenente tutti  i parametri dell’immagine, tramite $_tmp[‘name’][‘type’]; otteniamo il tipo (il tipo può essere  image/jpeg, per immagini jpg,  image/png per file png. Cosa analoga per gli altri formati) */

$_tmp =$request->getFiles($form->getName());

$type = $_tmp[‘name’][‘type’];

//otteniamo il file immagine (analogo ad $form->getName())

$tmpFile = $picture->getName();

//Dichiariamo di voler creare un immagine di dimensione 200×200 px

$thumbnail = new sfThumbnail(200, 200);
// Assegniamo il percorso all’immagine che volgiamo ridurre…

$thumbnail->loadFile(‘uploads/picture/’.$tmpFile);
// …e salviamola! In questo modo abbiamo sostituito l’immagine caricata nel form con la sua ridimensionata

$thumbnail->save(‘uploads/picture/’.$tmpFile, $type);

Per maggiori dettagli riguardo le funzioni del plugin sfThumbnail, visita il link http://www.symfony-project.org/plugins/sfThumbnailPlugin

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...