Rotazione e salvataggio di un'immagine con PHP e ImageMagik

05/10/2006

Per ottenere un effetto di rotazione su un'immagine utilizzando PHP e ImageMagik sarÓ sufficiente sfruttare la funzione MagickRotateImage a cui passare gli opportuni argomenti; vediamo innanzitutto un breve esempio di codice:

<?php 
$img = NewMagickWand();
MagickReadImage($img, 'test.jpg');
MagickRotateImage($img, null, 60);
header('Content-Type: image/jpeg');
MagickEchoImageBlob($img);
?>
In questo caso, la nostra istruzione permette di imporre alla risorsa di MagickWand una rotazione di 60░ in senso orario rispetto all'immagine originale.

Una volta manipolato il nostro file grafico, potremo salvarne una copia che conservi le modifiche effettuate:
<?php
set_time_limit(60 * 2);
$img = NewMagickWand();
MagickReadImage($img, 'test.jpg');
MagickRotateImage($img, null, 60);
MagickWriteImage($img, 'copia.jpg');
?>
In pratica, con il nostro piccolo script non facciamo altro che imporre una rotazione all'immagine originale attraverso la funzione MagickRotateImage() per poi salvare le modifiche in un nuovo file tramite una seconda funzione, MagickWriteImage() che crea la copia sulla base di due argomenti: la risorsa memorizzata e il nome della nuova immagine.

Il costrutto set_time_limit(60 * 2) pone un limite al tempo di esecuzione del salvataggio, nel nostro caso 120 secondi, passato il tempo stabilito lo script andrÓ in timeout.

Attenzione: questo articolo Ŕ stato concesso in esclusiva per la pubblicazione a Mrwebmaster.it; ne Ŕ vietata la riproduzione,
anche parziale, senza l'esplicito consenso dell'autore e della redazione di Mrwebmaster.it.

© Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more.

Stampa :: Torna alla Home