如何在C#中實現圖片縮放
2024-07-21 02:18:39
供稿:網友
//************************************************************//
//下面給出三個簡單的方法,后面兩個方法是擴展,估計有時用得著
//************************************************************//
/// <summary>
/// 縮小圖片
/// </summary>
/// <param name="stroldpic">源圖文件名(包括路徑)</param>
/// <param name="strnewpic">縮小后保存為文件名(包括路徑)</param>
/// <param name="intwidth">縮小至寬度</param>
/// <param name="intheight">縮小至高度</param>
public void smallpic(string stroldpic, string strnewpic, int intwidth, int intheight)
{
system.drawing.bitmap objpic,objnewpic;
try
{
objpic = new system.drawing.bitmap(stroldpic);
objnewpic=new system.drawing.bitmap(objpic,intwidth,intheight);
objnewpic.save(strnewpic);
}
catch(exception exp){throw exp;}
finally
{
objpic=null;
objnewpic=null;
}
}
/// <summary>
/// 按比例縮小圖片,自動計算高度
/// </summary>
/// <param name="stroldpic">源圖文件名(包括路徑)</param>
/// <param name="strnewpic">縮小后保存為文件名(包括路徑)</param>
/// <param name="intwidth">縮小至寬度</param>
public void smallpic(string stroldpic, string strnewpic, int intwidth)
{
system.drawing.bitmap objpic,objnewpic;
try
{
objpic = new system.drawing.bitmap(stroldpic);
int intheight=(intwidth / objpic.width) * objpic.height;
objnewpic=new system.drawing.bitmap(objpic,intwidth,intheight);
objnewpic.save(strnewpic);
}
catch(exception exp){throw exp;}
finally
{
objpic=null;
objnewpic=null;
}
}
/// <summary>
/// 按比例縮小圖片,自動計算寬度
/// </summary>
/// <param name="stroldpic">源圖文件名(包括路徑)</param>
/// <param name="strnewpic">縮小后保存為文件名(包括路徑)</param>
/// <param name="intheight">縮小至高度</param>
public void smallpic(string stroldpic, string strnewpic, int intheight)
{
system.drawing.bitmap objpic,objnewpic;
try
{
objpic = new system.drawing.bitmap(stroldpic);
int intwidth=(intheight / objpic.height) * objpic.width;
objnewpic=new system.drawing.bitmap(objpic,intwidth,intheight);
objnewpic.save(strnewpic);
}
catch(exception exp){throw exp;}
finally
{
objpic=null;
objnewpic=null;
}
}