Primeiramente criaremos um arquivo chamado Thumbnail.aspx e o code behind thumbnail.aspx.cs no Visual Studio.
O Conteúdo será exibido da seguinte maneira:
<%@ Page language="c#" Codebehind="Thumbnail.aspx.cs" Inherits="Thumbnail" %>
Agora, abra o arquivo Thumbnail.aspx.cs e criaremos o code behind:
public class Thumbnail : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
string file = Request.QueryString["file"];
string w = Request.QueryString["w"];
string h = Request.QueryString["h"];
System.Drawing.Image.FromFile(Server.MapPath(file));
System.Drawing.Image thumbnailImage = image.GetThumbnailImage(Int32.Parse(w), Int32.Parse(h), new System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback), IntPtr.Zero);
MemoryStream imageStream = new MemoryStream();
thumbnailImage.Save(imageStream, System.Drawing.Imaging.Imageformat.Jpeg);
byte[] imageContent = new Byte[imageStream.Length];
imageStream.Position = 0;
imageStream.Read(imageContent, 0, (int)imageStream.Length);
Response.ContentType = "image/jpeg";
Response.BinaryWrite(imageContent);
}
public bool ThumbnailCallback()
{
return true;
}
}
Pronto. Basta chamar em seu código HTML da seguinte maneira:
<img src="Thumbnail.aspx?file=teste.jpg&w=100&h=100" />
Onde:
- O atributo file é o nome do arquivo a partir da raiz do site.
- O atributo w é a largura do thumbnail desejado.
- O atributo h é a altura do thumbnail desejado.
Não esqueça de efetuar a validação dos parametros enviados pela QueryString.
Espero ter ajudado.
0 comentários:
Postar um comentário