Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    1,056

    librerie GD creazione immagine particolare

    Qualcuno sa se è possibile creare ad esempio da un'immagin grande una thumbnail che sia inscritta in un quadrato di 100x100 px in modo che lo spazio vuoto sia bianco e l'immagine quindi centrata???

    Spero di esser riucita a spiegare

  2. #2
    Certo che è possibile e la risposta l'hai messa tu nel titolo del topic (librerie GD).
    Leggiti il manuale alla voce Image Functions.
    All work and no play makes EricFlat a dull boy

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    1,056
    e lo so che devo usare le librerie gd..

    volevo solo capire se qualcuno aveva già creato una funzione che facesse al caso mio o se, essendo io molto ignorante, dovevo studiarmela da sola!!


    Ora cmq mi leggo il manuale!
    Grazie

  4. #4
    Non ci vuole nulla.

    Devi solo creare un'immagine piccola 100x100 pixel con sfondo bianco, prendere l'immagine grande, rimpicciolirla mantenendo le proporzioni e facendo in modo che la dimensione maggiore sia al massimo di 100 pixel e appiccicarla sul quadrato bianco.

    Qualche riga di codice... se fai una ricerca trovi un sacco di esempi.

    All work and no play makes EricFlat a dull boy

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    1,056
    bah,
    capisco poco...

    ma questa potrebbe fare al caso mio?

    Here is a function to flip an image using imagecopy, just replace SRC_IMAGE and DEST_IMAGE with your own filename
    (works only for jpg source image)

    <?
    define("MIRROR_HORIZONTAL", 1);
    define("MIRROR_VERTICAL", 2);
    define("MIRROR_BOTH", 3);

    function Mirror($src, $dest, $type)
    {
    _ $imgsrc = imagecreatefromjpeg($src);
    _ $width = imagesx($imgsrc);
    _ $height = imagesy($imgsrc);
    _ $imgdest = imagecreatetruecolor($width, $height);
    _
    _ for ($x=0 ; $x<$width ; $x++)
    __ {
    __ _ for ($y=0 ; $y<$height ; $y++)
    __ {
    __ _ if ($type == MIRROR_HORIZONTAL) imagecopy($imgdest, $imgsrc, $width-$x-1, $y, $x, $y, 1, 1);
    __ _ if ($type == MIRROR_VERTICAL) imagecopy($imgdest, $imgsrc, $x, $height-$y-1, $x, $y, 1, 1);
    __ _ if ($type == MIRROR_BOTH) imagecopy($imgdest, $imgsrc, $width-$x-1, $height-$y-1, $x, $y, 1, 1);
    __ }
    __ }
    _
    _ imagejpeg($imgdest, $dest);
    _
    _ imagedestroy($imgsrc);
    _ imagedestroy($imgdest);
    }

    Mirror(SRC_IMAGE, DEST_IMAGE, MIRROR_HORIZONTAL);

    print "[img]SRC_IMAGE[/img]";
    print "

    ";
    print "[img]DEST_IMAGE[/img]";
    ?>


    Booooh

  6. #6
    Dando un'occhiata di 5 microsecondi mi sembra di capire che quella funzione ti flippa l'immagine...
    All work and no play makes EricFlat a dull boy

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    1,056
    Originariamente inviato da EricFlat
    Non ci vuole nulla.

    Devi solo creare un'immagine piccola 100x100 pixel con sfondo bianco, prendere l'immagine grande, rimpicciolirla mantenendo le proporzioni e facendo in modo che la dimensione maggiore sia al massimo di 100 pixel e appiccicarla sul quadrato bianco.

    Qualche riga di codice... se fai una ricerca trovi un sacco di esempi.

    e ok, ma voglio che l'immagine sia centrata!!!
    Nel senso che , se è verticale, non sia allineata a sx con tutto il bianco a dx, ma con un pò di biabci a dx e un pò a sx..

  8. #8
    E qual'è il problema?
    La posizione orizzontale la troverai così:

    $dx = ( 100 - $dim_x_thumbnail ) / 2;
    All work and no play makes EricFlat a dull boy

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    1,056
    Originariamente inviato da EricFlat
    E qual'è il problema?
    La posizione orizzontale la troverai così:

    $dx = ( 100 - $dim_thumbnail ) / 2;
    E la verticale anche giusto?
    se è orizz o vert dall'operazione viene fuori 0 percui giusta...

    grrr..
    che significa essere ignoranti!!!



    Grazie!

  10. #10
    Originariamente inviato da Bregovic
    E la verticale anche giusto?
    se è orizz o vert dall'operazione viene fuori 0 percui giusta...

    grrr..
    che significa essere ignoranti!!!



    Grazie!
    $dy = ( 100 - $dim_y_thumbnail ) / 2;


    Per un operazione del genere basta ragionarci su 0.3 secondi...
    All work and no play makes EricFlat a dull boy

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.