2007年8月31日 星期五

上傳圖片後縮圖並存入資料庫或直接輸出

利用Stream操作圖形

using System.IO;
using System.Drawing;
protected void UploadBtn_Click(object sender, EventArgs e)
{
System.Drawing.Image img = System.Drawing.Image.FromStream(FileUpload1.PostedFile.InputStream);//取得上傳圖形stream
img = img.GetThumbnailImage(400, 300,null,System.IntPtr.Zero);//利用GDI+自動縮圖
MemoryStream stream = new MemoryStream();
img.Save(stream, System.Drawing.Imaging.ImageFormat.Jpeg);//將縮圖存入MemoryStream
//將MemoryStream,轉成byte[],存入資料庫
Data.SqlClient.SqlParameter("pic", stream.GetBuffer());

//直接網頁顯示
Response.Clear();
Response.ContentType = "image/jpeg";
//方法一
img.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
//方法二
Response.BinaryWrite(stream.GetBuffer());
}

參考自 Longer Station-ASP.NET討論區

http://longer.slps.tpc.edu.tw/FNG/Forum/ViewTopic.aspx?sid=77&fumcode=ad_aspnet&page=1

沒有留言: