如何把存储在数据库中的图片根据自己的需要的大小显示出来
文章类别:
asp | 发表日期:2008-10-5 20:40:04
文件1:showimage.aspx.cs
namespace ImageResizing {
public class MainDisplay : System.Web.UI.Page {
public void Page_Load(System.Object sender, System.EventArgs e) {
try {
System.Int32 _ImgID = System.Convert.ToInt32(Request.QueryString["ImgID"]);
System.Int32 _height = System.Convert.ToInt32(Request.QueryString["height"]);
System.Int32 _width = System.Convert.ToInt32(Request.QueryString["width"]);
System.Data.SqlClient.SqlConnection Con = new System.Data.SqlClient.SqlConnection( "server=localhost;database=northwind;trusted_connection=true" );
System.String SqlCmd = "SELECT * FROM Images WHERE ImageID = @ImageID";
System.Data.SqlClient.SqlCommand SqlCmdObj = new System.Data.SqlClient.SqlCommand( SqlCmd, Con );
SqlCmdObj.Parameters.Add("@ImageID", System.Data.SqlDbType.Int).Value = _ImgID;
Con.Open();
System.Data.SqlClient.SqlDataReader SqlReader = SqlCmdObj.ExecuteReader();
SqlReader.Read();
System.Web.HttpContext.Current.Response.ContentType = "image/pjpeg";
System.Drawing.Image _image = System.Drawing.Image.FromStream( new System.IO.MemoryStream( (byte[])SqlReader["Image"] ) );
System.Drawing.Image _newimage = _image.GetThumbnailImage( _width, _height, null, new System.IntPtr());
_newimage.Save( System.Web.HttpContext.Current.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg );
} catch (System.Exception Ex) {
System.Web.HttpContext.Current.Trace.Write(Ex.Message.ToString());
}
}
}
}
文件2:显示图片之用,把querystring传入
<html>
<body>
<img src="showimage.aspx?ImgID=202&height=150&width=150">
</body>
</html>