asp.net上传图片并同时生成缩略图

<%@ Page Language="C#" ResponseEncoding="gb2312" %>

<%@ Import Namespace="System" %>

<%@ Import Namespace="System.IO" %>

<%@ Import Namespace="System.Drawing" %>

<%@ Import Namespace="System.Drawing.Imaging" %>

<script runat="server">

 

void Page_Load(Object sender, EventArgs e)

{

if (!Page.IsPostBack)

{

ImgPreview.Visible = false;

}

}

void GetThumbnailImage(int width, int height, string strInfo, int left, int right)

{

string file = "Uploads/" + uploadFile.PostedFile.FileName.Substring(uploadFile.PostedFile.FileName.LastIndexOf('\\') + 1);

string newfile = "Uploads/" + uploadFile.PostedFile.FileName.Substring(uploadFile.PostedFile.FileName.LastIndexOf('\\') + 1) + ".jpg";

string strAdd = strInfo;

System.Drawing.Image oldimage = System.Drawing.Image.FromFile(Server.MapPath(file));

System.Drawing.Image thumbnailImage =

oldimage.GetThumbnailImage(width, height, new System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback), IntPtr.Zero);

Response.Clear();

Bitmap output = new Bitmap(thumbnailImage);

Graphics g = Graphics.FromImage(output);

g.DrawString(strAdd, new Font("Courier New", 14), new SolidBrush(Color.Red), left, right);

output.Save(Server.MapPath(newfile), System.Drawing.Imaging.ImageFormat.Jpeg);

Response.ContentType = "image/gif";

ImgPreview.Visible = true;

ImgPreview.ImageUrl = newfile;

}

bool ThumbnailCallback()

{

return true;

}

void Button_Click(object sender, EventArgs e)

{

int width, height, left, right;

string strAddInfo = txtAddInfo.Text;

width = Int32.Parse(txtWidth.Text);

height = Int32.Parse(txtHeight.Text);

left = Int32.Parse(txtLeft.Text);

right = Int32.Parse(txtRight.Text);

if (!(uploadFile.PostedFile.ContentLength > 0))

{

lblErrInfo.Text = "没有选择文件";

}

else

{

string path = Server.MapPath("./Uploads/" + uploadFile.PostedFile.FileName.Substring(uploadFile.PostedFile.FileName.LastIndexOf('\\') + 1));

if (File.Exists(path))

{

lblErrInfo.Text = "已经有同名文件";

}

else

{

uploadFile.PostedFile.SaveAs(path);

GetThumbnailImage(width, height, strAddInfo, left, right);

}

}

}

</script>

<html xmlns="http://www.w3.org/1999/xhtml">

<head ></asp:Image>

</p>

<!-- Insert content here -->

</form>

</body>

</html>