给你些代码看一下:
/// <summary>
/// 创建图像的缩微图
/// </summary>
/// <param name="sourceFile">源图像文件完整路径及文件名</param>
/// <param name="targetFile">生成缩图文件的完整路径及文件名</param>
/// <param name="imageWidth">缩微图宽度</param>
/// <param name="imageHeight">缩微图高度</param>
/// <param name="format">生成图片的格式</param>
/// <returns>true--生成成功,false--生成失败</returns>
public static bool CreateSmallImage(string sourceFile,string targetFile,int imageWidth,int imageHeight,AnMeng.Web.ImageFormat format)
{
try
{
if (!System.IO.File.Exists(sourceFile))
throw new Exception("图片文件" + sourceFile + "不存在!"); Bitmap bmp = new Bitmap(sourceFile);
Image.GetThumbnailImageAbort thumbnail = new System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback);
Image tn = bmp.GetThumbnailImage(imageWidth,imageHeight,thumbnail,IntPtr.Zero);
CreateImage(targetFile,tn,format);
tn.Dispose();
bmp.Dispose();
return true;
}
catch(Exception ex)
{
throw new Exception("创建缩图失败!",ex);
}
}
/// <summary>
/// 根据传入的Image数据及图片格式,生成图片文件.
/// </summary>
/// <param name="fileName">完整的图片路径及文件名</param>
/// <param name="image">图片数据</param>
/// <param name="format">生成图片的格式</param>
/// <returns>true--生成成功,false--生成失败</returns>
public static bool CreateImage(string fileName,System.Drawing.Image image,AnMeng.Web.ImageFormat format)
{
try
{
switch(format)
{
case AnMeng.Web.ImageFormat.Jpg:
image.Save(fileName,System.Drawing.Imaging.ImageFormat.Jpeg);
break;
case AnMeng.Web.ImageFormat.Bmp:
image.Save(fileName,System.Drawing.Imaging.ImageFormat.Bmp);
break;
case AnMeng.Web.ImageFormat.Gif:
image.Save(fileName,System.Drawing.Imaging.ImageFormat.Gif);
break;
case AnMeng.Web.ImageFormat.Icon:
image.Save(fileName,System.Drawing.Imaging.ImageFormat.Icon);
break;
}
return true;
}
catch{throw;}
}