Resize foto

martedì 21 febbraio 2012 - 20.14
Tag Elenco Tags  C#

dandi.box Profilo | Junior Member

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


{
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!

martinez Profilo | Senior Member

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

Ciao!
>
>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.

Ciao puoi utilizzare una funzioncina tipo questa per controllare sia le dimensioni dell'immagine che il resize della stessa

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

L'ho scritta al volo ma dovrebbe funzionare fammi sapere!
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5