Ciao a tutti!!
sto tentando di scrivere una funzione che mi possa ridimensionare le immagini (JPEG,GIF e PNG).. ho dato un'okkiata ad un po' di tool per capire come ragionare e ora sto provando a scrivere io..
..il problema è che non funziona! Vi riporto il codice, magari trovate l'errore che non ho visto.. [ndr: la sintassi è giusta, nn è lì!]
Codice PHP:
function ridimensiona($img,$size)//nome file - dimensione lato più lungo
{
//Controllo i dati inseriti
if (!file_exists($img))
exit("Impossibile localizzare il file $img");
if ($size>400)
$size=400;
//interrogo il file
list($x,$y,$type)=getimagesize($img);
// echo ("X -> $x .. Y -> $y .. TYPE -> $type \n");
//Nuove dimensioni
if ($x>$y)
{
$new_x=$size;
$diff=$x-$size;
$new_y=$y-$diff;
}else
{
$new_y=$size;
$diff=$y-$size;
$new_x=$x-$diff;
}
echo ("X -> $new_x .. Y -> $new_y");
//Apro immagini
$new_img=imagecreatetruecolor($new_x,$new_y);
switch ($type) //1=>GIF 2=>JPEG 3=>PNG
{
case 1:
$old_img=imagecreatefromgif($img);
break;
case 2:
$old_img=imagecreatefromjpeg($img);
break;
case 3:
$old_img=imagecreatefrompng($img);
break;
}
//ridimensiono l'immagine
imagecopyresized($new_img,$old_img,0,0,0,0,$new_x,$new_y,$x,$y);
header("Content-type: image/png"); // <-----
imagepng($new_img);
//distruggo le immagin temporanee create
imagedestroy($new_img);
imagedestroy($old_img);
}
con la riga che ha la freccia in commento l'output è un'immagine vuota al centro della pagina.. senza quella riga mi viene stampata in carattere ascii la codifica dell'immagine..
ho dimenticato qualche passaggio??
Grazie a tutti
FAbio