Home > Computer e tecnologia, Web e Internet > Creare il negativo di una immagine con php imagefilter

Creare il negativo di una immagine con php imagefilter

Ecco un modo semplice per creare, tramite PHP, il negativo di una immagine o di una foto e successivamente da quest’ultima crearne una in bianco e nero.

Questo è il codice php:

<?php

//stabilisco dov’è la foto
$image_path = “../_images/img1.jpg”;

//FILTRO NEGATIVO
$im = imagecreatefromjpeg($image_path); //crea l’img temp
imagefilter($im, IMG_FILTER_NEGATE); // applica filtro
$image_path_neg = substr($image_path, 0, -4).”_neg.jpg” ; //stabilisci il nome del nuovo file
imagejpeg($im, $image_path_neg); // crea il file
imagedestroy($im); // libera la memoria cancellando il file img temp

//FILTRO BIANCO E NERO PARTENDO DALL’IMG NEGATIVA
$im = imagecreatefromjpeg($image_path_neg); //crea l’img temp partendo dall’img negativa
imagefilter($im, IMG_FILTER_GRAYSCALE); // applica filtro
$image_path_bn = substr($image_path, 0, -4).”_bn.jpg” ; //stabilisci il nome del nuovo file
imagejpeg($im, $image_path_bn); // crea il file
imagedestroy($im); // libera la memoria cancellando il file img temp

echo “<br/> <img src=\”$image_path\” /><br /><img src=\”$image_path_neg\” /><br/><img src=\”$image_path_bn\” /><br/>”; // stampa

?>

Lo script crea un immagine temporanea tramite imagecreatefromjpeg a cui applica il filtro imagefilter. Quindi creo il nome del nuovo file  tramite una  sottostringa del nome del file originale, toglo gli ultimi 4 caratteri (ovvero il .jpg) e poi aggiungo il suffisso _neg o _bn rispettivamente per il filtro negativo e per quello bianco/nero e quindi rimetto l’estensione .jpg .

Dopodiché creo il nuovo file   con imagejpeg e libero la memoria dal file temporaneo con imagedestroy. Infine stampo il tutto tramite un echo.

Ecco il risultato dello script:

A sinistra l'immagine originale, al centro è stato applicato il filtro negativo e a destra i filtri negativo e bianco e nero.

Infine volevo segnalarvi questo link che mi ha dato spunto per scrivere questo articolo e potete trovare il codice anche per gli altri filtri disponibile tramite imagefilter.

  1. Non c'è ancora nessun commento.
  1. No trackbacks yet.

Lascia un Commento

Fill in your details below or click an icon to log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Log Out / Modifica )

Foto Twitter

You are commenting using your Twitter account. Log Out / Modifica )

Foto di Facebook

You are commenting using your Facebook account. Log Out / Modifica )

Connecting to %s

Iscriviti

Get every new post delivered to your Inbox.