Leobreda.Net

HTML | DHTML | JavaScript | DOM | Ajax | Asp | Asp.net | PHP | Ms. SQL | MySQL

TAG cloud

.net     ajax     api     arquivo     array     asp     asp.net     banco de dados     bing     bloqueio     boas práticas     bug     c sharp     c#     c#     chart     classe     collate     collation     complemento     complementos     componente     conexão sql     connection string     css     cursor location     desativar programas     dom     erro cs0246     explorer     ferramenta de busca     firefox     ftp     função     global.asa     global.asax     google     gráfico     helicon     hospedagem ruim     hostphd     http 301     imagem     include     indexação     inicialização     insert     internet lenta     legendas     limit

Pesquisa por: asp.net

Utilizando ASP.net p/ gerar Thumbnail de imagens

asp.net, system.drawing, thumbnail em aspx, vb.net

10 de junho de 2008     22:06528 visitas

Muito interessante esta aplicação em ASP.net que desenvolvi no site Turma da Concha, ideal para ser utilizado em álbuns de fotos dinamicamente.

 

Em nenhum momento, criou-se outra imagem de dimensões reduzidas. Com isso ganhei tempo, espaço em disco no servidor e principalmente, maior organização da localização dos arquivos.

Esta é a imagem original Esta é a imagem Thumbnail


 

 

A diferença encontrada nas duas imagens é o seu endereço:

Imagem original: /arquivos/images/0003.jpg

Imagem thumbnail: /thumbnail.aspx?IMG=arquivos/images/0003.jpg&X=160&Y=75

 

Instruções:

1. Gere a variável de Aplicação* a seguir no Global.asax (estamos trabalhando com ASP.net, ok?)

  Application("PATH_FISICO") = "d:aspleobreda"

 

* Por que gerar uma variável que armazena o endereço físico?

É mais fácil pra quem trabalha às vezes com diversas páginas no micro de casa; o endereço físico instanciado na variável simula a pasta raiz que o IIS configura, e a partir daí eu possa trabalhar com as páginas independe da estação de trabalho.

 

2. Crie o arquivo thumbnail.aspx

<%@ Page Language="vb"      Debug="true" %>
<%
' Inicializa as variáveis
Dim strFilename as string
Dim g as System.Drawing.Image
Dim cb as System.Drawing.Image.GetThumbnailImageAbort
Dim cbd As System.IntPtr
Dim Altura, Largura As Integer

strFilename = Application("PATH_FISICO") & Request.QueryString("IMG")

If Request.QueryString("X") <> "" Then
Altura = Convert.ToInt32(Request.QueryString("X"))
Else
Altura = 150
End If

If Request.QueryString("Y") <> "" Then
Largura = Convert.ToInt32(Request.QueryString("Y"))
Else
Largura = Altura / 1.3333
End If


Try
g = System.Drawing.Image.FromFile(strFilename)
Catch
g = System.Drawing.Image.FromFile(Application("PATH_FISICO") & "error.jpg")
End Try

' Altera o contentType : Esta página devolve uma imagem
Response.ContentType = "image/jpeg"
' Insere a imagem no objeto response
g.GetThumbnailImage(Altura, Largura, cb, cbd).Save(Response.OutputStream, g.RawFormat)
' destroi o objeto
g.Dispose()
%>


 

 

3. Gere uma imagem como o nome error.jpg

 

Esta imagem é utilizada no caso de a imagem a ser informada não existir.

Pode-se utilizar um GIF transparente no lugar. Neste caso, basta substituir error.jpg no código-fonte do arquivo thumbnail.aspx, e criar um Try / Catch no response.ContentType para "image/gif" ou outro formato qualquer de imagem desejado.

Só não fiz isso porque não me apresentou necessidade no momento!

 

 

 

4.Informe o endereço da imagem

thumbnail.aspx?IMG=arquivos/images/0003.jpg&X=160&Y=75

 

Parâmetros:

IMG: caminho físico da imagem a partir da variável de aplicação.

X: largura da imagem

Y: altura da imagem

 

 

Caso for informado apenas o caminho físico da imagem, a imagem irá receber um tamanho de 150x112 pixels.

Os parâmetros e medidas citadas poderão ser alterados conforme sua necessidade.

A seguir, mais exemplos do thumbnail da imagem...

 

Primeiro post do site

css, asp, asp.net, mysql

28 de abril de 2008     08:53259 visitas

Acabei de inaugurar com este PRIMEIRO POST no site Leobreda.net.

Espero que gostem daqui pra frente deste novo site:

  • Mais visual
  • Mais leve
  • CSS até o talo
  • ASP ASP.Net
  • Ms. SQL MySQL

É isso aê...

2010 - Leonardo Breda