using System.Drawing; //导入命名空间
//FileUpload 图片上传空间的ID
string postedfile = this.FileUpload.PostedFile.FileName;
string filePic = "";
string filePicSimple = "";
if (!(null == postedfile || "" == postedfile))
{
System.IO.Stream stream=this.FileUpload.PostedFile.InputStream;
System.Drawing.Image tempimg = System.Drawing.Image.FromStream(stream);
int width = tempimg.Width;//图片宽
int height = tempimg.Height;//图片的高
//--------
int iwidth = 160; //定义允许图片宽度,当宽度大于这个值时等比例缩小
int iheight = 120; //定义允许图片高度,当高度大于这个值时等比例缩小
int width2 = width; //临时的高
int height2 = height; //临时的宽
if (width2 > 0 && height2 > 0)
{
if (width2 / height2 >= iwidth / iheight)
{
if (width2 > iwidth)
{
width = iwidth;
height = (height2 * iwidth) / width2;
}
else
{
width = width2;
height = height2;
}
}
else
{
if (height2 > iheight)
{
height = iheight;
width = (width2 * iheight) / height2;
}
else
{
width = width2;
height = height2;
}
}
}
//--------
string extension = System.IO.Path.GetExtension(postedfile);
string Guidname = Convert.ToString(Guid.NewGuid());
filePic = Guidname + extension;
filePicSimple = Guidname + "small" + extension;
this.FileUpload.PostedFile.SaveAs(Server.MapPath("upload/" + filePic));
System.Drawing.Image oldimage = System.Drawing.Image.FromFile(Server.MapPath("upload/") + filePic);
System.Drawing.Image thumbnailImage = oldimage.GetThumbnailImage(width, height, new System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback), IntPtr.Zero);
Bitmap output = new Bitmap(thumbnailImage);
Graphics g = Graphics.FromImage(output);
output.Save(Server.MapPath("upload/") + filePicSimple, System.Drawing.Imaging.ImageFormat.Jpeg);
Response.Write("<script>alert('成功');window.history.go(-1);</script>");
}
//在加一个方法
bool ThumbnailCallback()
{
return true;
}