Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    ridimensionare le foto con php?

    ciao! sto creando un database per le news, il problema è che lo stesso testo sarà associato in home ad una foto di dimensioni 100 x 50, nelle top news ad una foto di dimensioni 200 x 150, nella pagina dedicata alla news ad una foto di dimensioni 300 x 100. Come posso fare? Ovviamente la foto sarà sempre la stessa. Io pensavo di inserire i link alle foto nel database, ma non esiste qualche tool o classe già fatta che una volta inserita la foto me la ridimensioni? O viene na schifessa???

  2. #2

    Re: ridimensionare le foto con php?

    Originariamente inviato da elysaweb
    ciao! sto creando un database per le news, il problema è che lo stesso testo sarà associato in home ad una foto di dimensioni 100 x 50, nelle top news ad una foto di dimensioni 200 x 150, nella pagina dedicata alla news ad una foto di dimensioni 300 x 100. Come posso fare? Ovviamente la foto sarà sempre la stessa. Io pensavo di inserire i link alle foto nel database, ma non esiste qualche tool o classe già fatta che una volta inserita la foto me la ridimensioni? O viene na schifessa???
    Puoi farlo al volo sulla pagina ma ti consiglio di usare le GD fai un upload unico e ti salvi le foto distinte per le ciascuna categoria
    su phpclasses penso che ne troverai un sacco ma pure nel thread in rilievo esiste una pillola che parla proprio di questo

  3. #3
    potresti isnerire questo script in una funzione e usarlo ovunque:

    Codice PHP:
    $nomeimage nome dell'immagine o eventuale varibile da cui prendere il nome dell'immagine da cui si vuol fare la preview ;
      
    #creazione preview con GD library
      
    $new_width=40;      //Larghezza immagine ridimensionata
      
    $new_height=40;      //Altezza immagine ridimensionata
      
    $ncompression=90;      //Compressione dell'immagine jpg
      
    $source_path="directory_di_partenza/";      //Diretory dove si trova il file di cui volgiamo fare la preview
      
    $destination_path="directory_di_salvataggio_preview/";      //diretory dove vogliamo salvare l'immagine di preview
      
          
    global $source_path;
          global 
    $destination_path;
          global 
    $new_width;
          global 
    $new_height;
          
    $destimg=ImageCreate($new_width,$new_height) or die("Problemi nelle creazioni dell'immagine");
          
    $srcimg=ImageCreateFromJPEG($source_path.$nomeimage) or die("Problemi nell'aprire l'immagine");
          
    ImageCopyResized($destimg,$srcimg,0,0,0,0,$new_width,$new_height,ImageSX($srcimg),ImageSY($srcimg)) or die("Problemi nel ridimensionamento");
          
    ImageJPEG($destimg,$destination_path.$nomeimage,$compression) or die("Problemi nel salvataggio"); 

  4. #4
    grazie per le risposte. avrei però una domanda: se io ridimensiono le foto con lo script che mi avete suggerito, mi appaiono un po' distorte come quando forzo le dimensioni con l'html o proprio avviene una modifica grafica sulle foto?

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Dipende: se l'immagine di partenza rispetta le proporzioni non avrai problemi, ma nel tuo caso, visto che una e 2:1 una 4:3 e l'ultima 3:1 un semplice ridimensionamento distorcerà per forza... puoi anche fare del clipping, ossia ritagliare dall'immagine originale una parte delle dimensioni che ti interessano... non garantisce risultati ottimali (qualcuno si troverà senza testa o piedi o a metà) però elimina i problemi di distorsione.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  6. #6

  7. #7
    dovresti allora modificare le foto in percentuale rispetto all'originale, ad esempio visualizzarle al 60% delle dimensioni originali. Per far questo basta modificare le prime righe, supponendo che le dimensioni originali della immagine siano 200x150:

    Codice PHP:
    $new_width=(int)200*100/60;      //Larghezza immagine ridimensionata
    $new_height=(int)150*100/60;      //Altezza immagine ridimensionata 
    (INT) è indispensabile eprchè la formula suddetta può generare numer FLOAT (con la virgola decimale) e naturalemnte non puoi visualizzare immagini con simili dimnsioni, per cui (INT) preleva la parte intera del risultato.

  8. #8

    sì.. ma il peso?

    di nuovo grazie a tutti, però quello che mi preme capire è se io carico tramite un upload un'immagine mettiamo 1024x768 da 2mb nel server, nel database metto solo il nome ed il percorso dell'immagine in modo da poterla recuperare in seguito, poi quando io applico i vostri script oppure l'interessante classe segnalatami da daniele, il browser si carica in memoria la foto da 2mb oppure solo la thumbnail da 50kb?

  9. #9
    il codice che ti ho dato io salva sul server solo la thumbnail ridimensionata in percentuale

  10. #10

    Re: sì.. ma il peso?

    Originariamente inviato da elysaweb
    di nuovo grazie a tutti, però quello che mi preme capire è se io carico tramite un upload un'immagine mettiamo 1024x768 da 2mb nel server, nel database metto solo il nome ed il percorso dell'immagine in modo da poterla recuperare in seguito, poi quando io applico i vostri script oppure l'interessante classe segnalatami da daniele, il browser si carica in memoria la foto da 2mb oppure solo la thumbnail da 50kb?
    posso consigliarti la lettura di questo 3D??
    http://forum.html.it/forum/showthrea...hreadid=694523

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.