Rimuovere porzioni di immagini e rotazione con PHP e ImageMagik

05/10/2006

Un'operazione frequente nella manipolazione delle immagini e quella relativa alla rimozione di parti di essi, come ad esempio i bordi; anche in questo caso PHP e ImageMagik ci mettono a disposizione gli strumenti adeguati:

<?php
$img = NewMagickWand();
MagickReadImage($img, 'test.jpg');
MagickShaveImage($img, 10, 5);
header('Content-Type: image/jpeg');
MagickEchoImageBlob($img);
?>
Nel caso specifico, abbiamo sfruttato le potenzialità della funzione MagickShaveImage() per eliminare da un'immagine 10px dei bordi destro e sinistro, 5px dei bordi superiore ed inferiore.

Un'altra operazione frequente è quella della conversione di un'immagine da un formato ad un'altro; nel prossimo esempio mostreremo il codice necessario per convertire un'immagine PNG in un JPEG:
<?php
$img = NewMagickWand();
MagickReadImage($img, 'test.png');
MagickSetImageFormat($img, 'JPEG');
header('Content-Type: image/jpeg');
MagickEchoImageBlob($img);
?>

In questo caso, entra in gioco la funzione MagickSetImageFormat() a cui devono essere passati come parametri la variabile contenente l'immagine da manipolare e il formato in cui si vuole operare la conversione.

Anche in questo caso, come in quello relativo alla riduzione delle dimensioni dell'immagine, ImageMagik cerca di preservare al meglio la qualità grafica del file.

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