生成缩略图的过程如下:
private static Image MakeThumb(Image iOriginal, int max)
{
if (iOriginal.Width < max && iOriginal.Height < max)
{
return iOriginal;
} int newWidth, newHeight;
int newSideLength = Convert.ToInt32((iOriginal.Height / iOriginal.Width) * max);
newWidth = iOriginal.Width > iOriginal.Height ? max : Convert.ToInt32((iOriginal.Width * max) / iOriginal.Height);
newHeight = iOriginal.Height > iOriginal.Width ? max : Convert.ToInt32((iOriginal.Height * max) / iOriginal.Width); Image iThumb = new Bitmap(newWidth, newHeight);
Graphics g = Graphics.FromImage(iThumb);
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.DrawImage(iOriginal, 0, 0, newWidth, newHeight); return iThumb;
}忘各位大侠帮忙。
private static Image MakeThumb(Image iOriginal, int max)
{
if (iOriginal.Width < max && iOriginal.Height < max)
{
return iOriginal;
} int newWidth, newHeight;
int newSideLength = Convert.ToInt32((iOriginal.Height / iOriginal.Width) * max);
newWidth = iOriginal.Width > iOriginal.Height ? max : Convert.ToInt32((iOriginal.Width * max) / iOriginal.Height);
newHeight = iOriginal.Height > iOriginal.Width ? max : Convert.ToInt32((iOriginal.Height * max) / iOriginal.Width); Image iThumb = new Bitmap(newWidth, newHeight);
Graphics g = Graphics.FromImage(iThumb);
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.DrawImage(iOriginal, 0, 0, newWidth, newHeight); return iThumb;
}忘各位大侠帮忙。
{
if (iOriginal.Width < max && iOriginal.Height < max)
{
return iOriginal;
} int newWidth, newHeight;
int newSideLength = Convert.ToInt32((iOriginal.Height / iOriginal.Width) * max);
newWidth = iOriginal.Width > iOriginal.Height ? max : Convert.ToInt32((iOriginal.Width * max) / iOriginal.Height);
newHeight = iOriginal.Height > iOriginal.Width ? max : Convert.ToInt32((iOriginal.Height * max) / iOriginal.Width); Image iThumb = new Bitmap(newWidth, newHeight);
Graphics g = Graphics.FromImage(iThumb);
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.DrawImage(iOriginal, 0, 0, newWidth, newHeight);
//换一种格式保存图片.BMP格式的图片要加文件头才能显示.
System.IO.MemoryStream ms=new System.IO.MemoryStream();
iThumb.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
Image iThumb1 = Image.FromStream(ms);
return iThumb1;
}
iThumb.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
声明一下存储格式就好了。结贴