Visualizzazione risultati 1 fino 2 di 2

Discussione: Ridimensionare immagine senza salvarla

  1. #1
    Guest

    Predefinito Ridimensionare immagine senza salvarla

    Ciao a tutti, sul mio sito ho una cartella images che contiene tante immagini che si chiamano 1.png, 2.png ecc... Volevo visualizzare in una barra laterale tutte le immagini (10 per pagina della barra laterale) e al click su una delle immagini, vederla in dimensioni reali, ma il problema è che le immagini sono troppo pesanti, quindi volevo fare in modo che ognuna delle immagini della barra laterale venisse "miniaturizzata" in modo da portarla a 30px x 40px rendendole così più leggere e molto più facili da caricare per la banda dell'utente che le utilizza. Il problema è che non vorrei salvarle sul server, ma crearee sul momento miniature che poi vengono stampate e subito cancellate. Sapete aiutarmi?


    EDIT: Ho trovato questo e funziona, ma mostra una sola immagini e anche se richiamo un'altra volta la funzione OutThumb non mostra ulteriori immagini! Sapete aiutarmi?

    Codice PHP:
    <?
    function OutThumb($src, $w, $h){
    $size = getimagesize($src);
    if(
    $size[2] == 2 ){$im = @imagecreatefromjpeg($src);}
    elseif(
    $size[2] == 1 ){$im = @imagecreatefromgif($src);}
    elseif(
    $size[2] == 3 ){$im = @imagecreatefrompng($src);}

    $newwidth = $size[0];
    $newheight = $size[1];

    if(
    $newwidth > $w ){
    $newheight = ($w / $newwidth) * $newheight;
    $newwidth = $w;
    }
    if(
    $newheight > $h ){
    $newwidth = ($h / $newheight) * $newwidth;
    $newheight = $h;
    }

    if(
    $size[2] != 1){
    $new = imagecreatetruecolor($newwidth, $newheight);
    imagecopyresampled($new, $im, 0, 0, 0, 0, $newwidth, $newheight, $size[0], $size[1]);
    }
    else{
    $new = imagecreate($newwidth, $newheight);
    imagecopyresized($new, $im, 0, 0, 0, 0, $newwidth, $newheight, $size[0], $size[1]);
    }
    header('Content-Type: ' . $size['mime']);
    if(
    $size[2] == 2 ){@imagejpeg($new, '', 100);}
    elseif(
    $size[2] == 1 ){@imagegif($new);}
    elseif(
    $size[2] == 3 ){@imagepng($new);}
    @
    imagedestroy($im);
    @
    imagedestroy($new);
    }

    OutThumb("prova.jpg", 40, 40);
    ?>
    Ultima modifica di tenam : 15-09-2011 alle ore 19.38.45

  2. #2
    Guest

    Predefinito

    Ciao, anche se in ritardo credo di aver risposto alla tua domanda qui.

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •