C#实现为一张大尺寸图片创建缩略图的方法
本文实例讲述了C#实现为一张大尺寸图片创建缩略图的方法。分享给大家供大家参考。具体实现方法如下:
publicstaticBitmapCreateThumbnail(stringlcFilename,intlnWidth,intlnHeight)
{
System.Drawing.BitmapbmpOut=null;
try
{
BitmaploBMP=newBitmap(lcFilename);
ImageFormatloFormat=loBMP.RawFormat;
decimallnRatio;
intlnNewWidth=0;
intlnNewHeight=0;
//***Iftheimageissmallerthanathumbnailjustreturnit
if(loBMP.Width<lnWidth&&loBMP.Height<lnHeight)
returnloBMP;
if(loBMP.Width>loBMP.Height)
{
lnRatio=(decimal)lnWidth/loBMP.Width;
lnNewWidth=lnWidth;
decimallnTemp=loBMP.Height*lnRatio;
lnNewHeight=(int)lnTemp;
}
else
{
lnRatio=(decimal)lnHeight/loBMP.Height;
lnNewHeight=lnHeight;
decimallnTemp=loBMP.Width*lnRatio;
lnNewWidth=(int)lnTemp;
}
bmpOut=newBitmap(lnNewWidth,lnNewHeight);
Graphicsg=Graphics.FromImage(bmpOut);
g.InterpolationMode=System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.FillRectangle(Brushes.White,0,0,lnNewWidth,lnNewHeight);
g.DrawImage(loBMP,0,0,lnNewWidth,lnNewHeight);
loBMP.Dispose();
}
catch
{
returnnull;
}
returnbmpOut;
}
希望本文所述对大家的C#程序设计有所帮助。
热门推荐
10 小学周年庆祝福语简短
11 送花顾客祝福语简短的话
12 亲人提升的祝福语简短
13 祝福语朋友简短恋爱结婚
14 小孩降生的祝福语简短
15 大学内容祝福语大全简短
16 老婆生日祝福语有趣简短
17 毕业祝福语再见朋友简短
18 门市开业口头祝福语简短