Utilizzo di cookies
Script GD libray con PHP Modelli Creare immagine Colore e trasparenza Disegnare Pennelli Misurare Filtri Testo Copy Salvare Miscellanea
GD library con PHP
imagecreate() GIF con trasparenza
trasparenza a 256 colori


e-book
cartaceo

Viene creata un'immagine di 4 colori con imagecreate() e su di essa disegnate figure geometriche.


Notare che il primo colore definito è automaticamente assegnato allo sfondo.
Con imagecolorat(),  viene letto un punto/colore  x,y dell'immagine e con imagecolortransparent() reso trasparente quel colore per  tutta l'immagine.


Cambiando i valori x,y per una posizione con altro colore, sarà quest'ultimo ad essere reso trasparente.


<?php
$Immagine = imagecreate(200,200); // crea immagine
$Rosso = imagecolorallocate($Immagine, 255,0,0);// definisce Rosso


// il primo colore definito è automaticamente assegnato allo sfondo
$Verde = imagecolorallocate($Immagine, 0,255,0);
$Blu = imagecolorallocate($Immagine, 0,0,255);
$Giallo = imagecolorallocate($Immagine, 255,255,0);


// quadrati grandi, quello di colore non è necessario perchè lo sfondo è Rosso
imagefilledrectangle($Immagine,100,0,200,100,$Verde);
imagefilledrectangle($Immagine,100,100,200,200,$Blu);
imagefilledrectangle($Immagine,0,100,100,200,$Giallo);


// quadrati piccoli agli angoli
imagefilledrectangle($Immagine,150,0,200,50,$Rosso);
imagefilledrectangle($Immagine,150,150,200,200,$Verde);
imagefilledrectangle($Immagine,0,150,50,200,$Blu);
imagefilledrectangle($Immagine,0,0,50,50,$Giallo);
imagegif($Immagine,"es_55_GIF_con_trasparenza_1.gif"); // salva senza trasparenza


// legge punto x,y dell'immagine
$ColoreTrasparenza = imagecolorat($Immagine, 1, 1);
// rende trasparente il colore letto nel punto x,y
imagecolortransparent($Immagine, $ColoreTrasparenza);
header("Content-type: image/gif");
imagegif($Immagine,"es_55_GIF_con_trasparenza_2.gif"); // salva


// salva PNG (alternativo ed incompatibile con le istruzioni delle 2 righe precedenti)
// header("Content-type: image/png");
// imagepng($Immagine,"NomeFile.png"); // salva
imagegif($Immagine); // al browser
imagedestroy($Immagine); // libera memoria 
?>
 
Risultato: