buonasera a tutti,
sto cercando di effettuare un resize utilizzando asp.net così come suggerito e con questo codice ci riesco.
vorrei, però, poter memorizzare contemporaneamente anche il path dell'immagine sul campo "foto" del mio db.
spero mi aiutiate, grazie.
codice:<%@ Page Language="C#" %> <%@ import Namespace="System.Drawing.Imaging" %> <script runat="server"> //Send feedback to dotnut@hotmail.com //Pics folder has to be created under the current folder void UploadBtn_Click(Object sender, EventArgs e) { String UploadedFile = MyFile.PostedFile.FileName; int ExtractPos = UploadedFile.LastIndexOf("\\") + 1; //to retrieve only Filename from the complete path String UploadedFileName = UploadedFile.Substring(ExtractPos,UploadedFile.Length - ExtractPos); // Display information about posted file. Div is invisible by default FileName.InnerHtml =UploadedFileName; MyContentType.InnerHtml = MyFile.PostedFile.ContentType; ContentLength.InnerHtml = MyFile.PostedFile.ContentLength.ToString(); FileDetails.Visible = true; //div is made visible // Save uploaded file to server at the in the Pics folder MyFile.PostedFile.SaveAs(Request.PhysicalApplicationPath + "public\\" + "pics\\" + UploadedFileName ); //thumbnail creation starts try { //Read in the image filename whose thumbnail has to be created String imageUrl= UploadedFileName; //Read in the width and height int imageHeight =Convert.ToInt32(h.Text); int imageWidth = Convert.ToInt32(w.Text); //You may even specify a standard thumbnail size //int imageWidth = 70; //int imageHeight = 70; if (imageUrl.IndexOf("/") >= 0 || imageUrl.IndexOf("\\") >= 0 ) { //We found a / or \ Response.End(); } //the uploaded image will be stored in the Pics folder. //to get resize the image, the original image has to be accessed from the //Pics folder //Adesso image1 visualizza il percorso public/pics senza / il percorso è dalla dir principale imageUrl = "/public/pics/" + imageUrl; System.Drawing.Image fullSizeImg = System.Drawing.Image.FromFile(Server.MapPath(imageUrl)); System.Drawing.Image.GetThumbnailImageAbort dummyCallBack = new System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback); System.Drawing.Image thumbNailImg = fullSizeImg.GetThumbnailImage(imageWidth, imageHeight, dummyCallBack, IntPtr.Zero); //We need to create a unique filename for each generated image DateTime MyDate = DateTime.Now; String MyString = MyDate.ToString("ddMMyyhhmmss") + ".png" ; //Save the thumbnail in Png format. You may change it to a diff format with the ImageFormat property thumbNailImg.Save ( Request.PhysicalApplicationPath + "public\\" + "pics\\" + MyString , ImageFormat.Png); thumbNailImg.Dispose(); //Display the original & the newly generated thumbnail Image1.AlternateText = "Original image"; Image1.ImageUrl="pics\\" + UploadedFileName; Image2.AlternateText = "Thumbnail"; Image2.ImageUrl="pics\\" + MyString; } catch(Exception ex) { Response.Write("An error occurred - " + ex.ToString()); } } //this function is reqd for thumbnail creation public bool ThumbnailCallback() { return false; } </script> <html> <head> </head> <body> <form action="fileupload.aspx" method="post" enctype="multipart/form-data" runat="server"> <h4>Upload & save generated thumbnail </h4> Select File To Upload to Server: <input id="MyFile" type="file" runat="server" /> Desired Width of Thumbnail  : <asp:TextBox id="w" runat="server" name="w" Width="38px"></asp:TextBox> Desired Height of Thumbnail  : <asp:TextBox id="h" runat="server" name="h" Width="38px"></asp:TextBox> <input type="submit" value="Upload!" runat="server" onserverclick="UploadBtn_Click" /> <hr/> <div id="FileDetails" runat="server" visible="false">FileName: <span id="FileName" runat="server"></span> ContentType: <span id="MyContentType" runat="server"></span> ContentLength: <span id="ContentLength" runat="server">bytes </span> Original Image : <asp:Image id="Image1" runat="server"></asp:Image></br> Resized Image : <asp:Image id="Image2" runat="server"></asp:Image> </div> </form> </body> </html>

Rispondi quotando