Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Upload foto e resize

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    3,072

    Upload foto e resize

    Ciao a tutti, sono riuscita a gestire la fase di upload di immagini sul server.

    Ora però vorrei aggiungere due funzionalità e mi blocco:

    1 - ridimensionare le immagini a 500x500 (e cancellare la parte eccedente qualora non sia possibile)

    2 - visualizzare un messaggio quando si cerca di uploadare un'immagine inferiore a 500x500 (quindi per la quale non sarebbe possibile gestire il resize sopra indicato.

    Questo è il mio codice

    codice:
            {      
                IDAgenzia = Convert.ToInt32(Session["id_Agenzie"].ToString());
    
                string FileName = uploaFoto2.PostedFile.FileName.Substring
                            (uploaFoto2.PostedFile.FileName.LastIndexOf("\\") + 1);
    
                string[] sezioni = uploaFoto2.FileName.Split('.');
                string estensione = sezioni[sezioni.Length - 1];
    
                if ((estensione == "JPG") || (estensione == "Jpg") || (estensione == "jpg"))
                {
                    if (IDImmobile > 0)
                    {
                        //Viene verificato se esiste la cartella e in caso contrario viene creata
                        string path = Request.PhysicalApplicationPath;
                        path = path + "Immagini\\ID\\";
    
                        if (System.IO.Directory.Exists(path) == false)
                            System.IO.Directory.CreateDirectory(path);
    
                        FileName = FileName.Replace("'", " ");
                        path = path + FileName;
                        uploaFoto2.PostedFile.SaveAs(path);
    
                        FileStream file = new FileStream(path, FileMode.Open);
                        string newPath = Request.PhysicalApplicationPath + "Immagini\\" + ID + "\\" + "Foto2.jpg";
                        ResizeAndSave(file, 600, 400, newPath);
                        file.Close();
                        //Cancellazione vecchio file
                        System.IO.File.Delete(path);
    
                        hyFoto2.Text = "Foto 2";
                        hyFoto2.NavigateUrl = "..\\Immagini\\" + ID + "\\" + "Foto2.jpg";
    
                        Immobile = ImmobileManager.GetItem(ID);
                        Immobile.Foto2 = "Foto2.jpg";
                        ImmobileManager.Save(Immobile);
    
                    }
                }
                else
                {
                    ShowMessage("Impossibile caricare la foto! L'immagine deve essere in formato JPG!");
                }


    Grazie infinite per l'aiuto!

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    3,072

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    3,072
    Niente!!! ((

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    85
    Ciao,
    non so se può farti comodo... Questo codice ridimensiona l'immagine.
    nell'esempio ridimensiona a 100x100 (i percorsi sono quelli specifici del mio esempio).

    codice:
    Dim immagineOriginale As System.Drawing.Image 
    Dim imgThumb As System.Drawing.Image immagineOriginale = System.Drawing.Image.FromFile(Request.PhysicalApplicationPath() & "img\Percorso_foto_originali\" & idInserito.ToString() & ".jpg") 
    
    imgThumb = immagineOriginale.GetThumbnailImage(100, 100, Nothing, New IntPtr()) 
    imgThumb.Save(Request.PhysicalApplicationPath() & "img\\Percorso_foto_mini\\" & idInserito.ToString() & ".jpg")
    Per vedere se le dimensioni dell'immagine che si cerca di caricare è troppo piccola, puoi vedere con la proprietà width dell'Image.
    Non so però se si riesce a fare direttamente dal file che il client prova a caricare o va prima caricata nel server.
    A te le prove

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    89
    Ma se forzi un dimensionamento tipo 500 x 500, sei certa che poi non ottieni un effetto non voluto e poco gradevole visto che non manterebbe le proporzioni e avresti si una foto 500x 500 con con proporzioni alterate e quindi poco gradevole.

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.