//读取图像源文件流
System.Drawing.Image Img = System.Drawing.Image.FromStream(newFile);
//新建一bmp图片
System.Drawing.Image newImg = new System.Drawing.Bitmap(_sWidth, _sHeight);
//新建一画板
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(newImg);
//设置高质量的双三次插值法
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
//在指定位置并且指定大小绘制原图片的指定部分
g.DrawImage(Img, new Rectangle(0, 0, _sWidth, _sHeight), 0, 0, _Width, _Height, GraphicsUnit.Pixel);
//保存图片
newImg.Save(_SavePath + FName.Split('.').GetValue(0).ToString() + "_s." + FName.Split('.').GetValue(1).ToString(), System.Drawing.Imaging.ImageFormat.Jpeg);//指定缩略图的类型为jpg,缩略图最小且质量最高
newImg.Dispose();
g.Dispose();
另外一种生产缩略图的方法,不过生成缩略图文件大并且质量很低
System.Drawing.Image Img = System.Drawing.Image.FromStream(newFile);
System.Drawing.Image newImg = Img.GetThumbnailImage(_sWidth, _sHeight, null, System.IntPtr.Zero);
newImg.Save(_SavePath + FName.Split('.').GetValue(0).ToString() + "_s." + FName.Split('.').GetValue(1).ToString());
newImg.Dispose();
发表于 @ 2008年04月13日 19:50:00|评论(loading...)|编辑