c#產生縮圖不失真的方法執行個體分享
/// <summary>/// 獲得縮微圖/// </summary>/// <returns></returns> public bool GetThumbImg(){try{string imgpath; //原始路徑 if(imgsourceurl.IndexOf("\",0)<0) //使用的是相對路徑 {imgpath = HttpContext.Current.Server.MapPath(imgsourceurl); //轉化為實體路徑 }else{imgpath=imgsourceurl;}System.Drawing.Image sourceImage = System.Drawing.Image.FromFile(imgpath);int width = sourceImage.Width;int height = sourceImage.Height;if(thumbwidth <= 0){thumbwidth = 120;}if(thumbwidth >= width){return false;}else{(thumbwidth,thHeight*thumbwidth/thWidth,null,IntPtr.Zero);Image imgThumb=new System.Drawing.Bitmap(thumbwidth,height*thumbwidth/width);System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(imgThumb);g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;g.DrawImage(sourceImage, new Rectangle(0, 0, thumbwidth,height*thumbwidth/width), 0, 0, width, height, GraphicsUnit.Pixel);string thumbpath="";sourceImage.Dispose();if(thumburl==""){thumbpath=imgpath;}if(thumbpath.IndexOf("\",0)<0)//使用的是相對路徑 {thumbpath=HttpContext.Current.Server.MapPath(thumburl);//轉化為實體路徑 }imgThumb.Save(thumbpath,ImageFormat.Jpeg);imgThumb.Dispose();return true;}}catch{throw;}}
以上就是c#產生縮圖不失真的方法執行個體分享的內容,更多相關內容請關注topic.alibabacloud.com(www.php.cn)!