技术文章 > 如何在C#中实现图片缩放

如何在C#中实现图片缩放

2018-01-18 04:20

文档管理软件,文档管理系统,知识管理系统,档案管理系统的技术资料:
[code]
csharp
class ExampleOfLegalsoft
{
//************************************************************//
//下面给出三个简单的方法,后面两个方法是扩展,估计有时用得着
//************************************************************//
///
/// 缩小图片
///

/// 源图文件名(包括路径)
/// 缩小后保存为文件名(包括路径)
/// 缩小至宽度
/// 缩小至高度
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;
}
}
///
/// 按比例缩小图片,自动计算高度
///

/// 源图文件名(包括路径)
/// 缩小后保存为文件名(包括路径)
/// 缩小至宽度
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;
}
}

///
/// 按比例缩小图片,自动计算宽度
///

/// 源图文件名(包括路径)
/// 缩小后保存为文件名(包括路径)
/// 缩小至高度
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;
}
}
}
[/code]