Click here to Skip to main content
15,886,017 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
i want to change the resolution of one uploaded image to small size .how to do this usng c# asp.net

C#
if (fileUploadImage.HasFile)
 {
 int fileSize = fileUploadImage.PostedFile.ContentLength;
  
 if (fileSize > Convert.ToInt32(ConfigurationManager.AppSettings["fileSize"]))
 {
 lblUploadImage.Visible = true;
 }
 else
 {
 String fileName = fileUploadImage.FileName.ToString();//Substring (0,fileUploadImage.FileName.IndexOf("."));
  
 string fileNameUrl = ConfigurationManager.AppSettings["imagepath"] + GenerateUniqueFileName(txtFname.Text, Path.GetExtension(fileName));
  
 Bitmap upBmp = (Bitmap)Bitmap.FromStream(fileUploadImage.PostedFile.InputStream);
  
 
Bitmap newBmp = new Bitmap(50,50, System.Drawing.Imaging.PixelFormat.Format24bppRgb);
  
 
newBmp.SetResolution(72, 72);
  
 Graphics newGraphic = Graphics.FromImage(newBmp);
  
 
try
 {
  
 
newGraphic.Clear(Color.White);
  
 
newGraphic.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
  
 
newGraphic.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
  
 
newGraphic.DrawImage(upBmp, 500, 100, 500, 100);
  
 
newBmp.Save(MapPath(fileNameUrl));
  
 
//Show the uploaded resized picture in the image control
  
 
imgProfile.Src = fileNameUrl;
  
 
lblUploadImage.Visible = true;
 }
 catch(Exception exp)
 {
 }
 // fileUploadImage.SaveAs(Server.MapPath(fileNameUrl));
 // HiddenField1.Value = fileNameUrl;
 // imgProfile.Src = fileNameUrl;
 // lblUploadImage.Visible = false;
 }
Posted
Updated 18-Sep-12 21:54pm
v2
Comments
Legor 19-Sep-12 3:49am    
To less information, Please elaborate.
Sergey Alexandrovich Kryukov 19-Sep-12 3:56am    
I'm pretty much sure you don't need to change image resolution; it has little use. Most likely, you need to re-sample the image. Up or down? (Any considerable up-scale means louse quality...)
--SA

You can have a look at the SetResolution-Method:
http://msdn.microsoft.com/de-de/library/system.drawing.bitmap.setresolution.aspx[^]

But as Sergey mentioned what you probably want to do is a Downsampling of the image.
 
Share this answer
 
Hello, you have a little mistake in your code, but it's so helpfully.

you must save the upBmp object and not the newBmp object.

Thank you so much!!
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900