Generar imagenes miniatura
Publicado: 12/04/2006 Archivado en: Informática e Internet Deja un comentario »Imports System.Drawing
Imports System.Drawing.Imaging
Imports System.Drawing.Drawing2D
Partial Class GenerateThumb
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Len(Trim(Request.QueryString("ImagePath"))) <> 0 Then
Try
‘Creamos una imagen basada en el archivo original
Dim _MainBitMap As New Bitmap(Request.QueryString("ImagePath"))
Dim oThumbnail As Image
With _MainBitMap
‘Seteamos una resolución de DPI
‘Esto da la posibilidad de bajar más aún el tamaño
‘En KB de la imagen.
.SetResolution(75, 75)
‘La principal ventaja de .Net
‘Es que tiene métodos para generar las imagenes
‘en miniatura, en este caso de 80 x 70 pixeles
oThumbnail = .GetThumbnailImage(80, 70, Nothing, Nothing)
End With
Response.ContentType = "image/Jpeg"
oThumbnail.Save(Response.OutputStream, ImageFormat.Jpeg)
Catch
End Try
Else
‘En el caso de que la imagen no exista, mostramos una avisando esto.
Dim _MainBitMap As New Bitmap(80, 70, PixelFormat.Format16bppRgb555)
Dim _ErrorGraphic As Graphics = Graphics.FromImage(_MainBitMap)
With _ErrorGraphic
.Clear(Color.White)
.DrawLine(New Pen(Color.Red, 1), 0, 0, 80, 0)
.DrawLine(New Pen(Color.Red, 1), 0, 69, 80, 69)
.DrawLine(New Pen(Color.Red, 1), 0, 0, 0, 69)
.DrawLine(New Pen(Color.Red, 1), 79, 0, 79, 69)
.DrawString("Imagen", New Font("Arial", 10, FontStyle.Regular), Brushes.Gray, 2, 5)
.DrawString("No disponible", New Font("Arial", 10, FontStyle.Regular), Brushes.Gray, 2, 20)
End With
Response.ContentType = "image/Jpeg"
_MainBitMap.Save(Response.OutputStream, ImageFormat.Jpeg)
End If
End Sub
End Class
Mi regreso
Publicado: 07/04/2006 Archivado en: Uncategorized Deja un comentario »Hace 3 días atrás comenté que viajaría a Buenos Aires, pero con la situación por la cual pasaba la línea aérea L.A.B., no sabía que pasaría.
Bueno, lo bueno es que viajé, y lo mejor es que conocí aquellas caras que veía solo en el MSN o en los foros, o por correo electrónico.
Hasta hace tres días pensé que era el único loco en este mundo, pero estos tres días me hicieron ver que locos hay en todos lados.
Locos, eufóricos, apasionados, delirantes, y más adjetivos, todos juntos por la tecnología.
Así que no me queda más que decir, gracias por haberlos podido conocer, y saber que formo parte de algo que es más grande de lo que podía imaginar.
Gracias a todos.
Matías Iacono
Microsoft M.V.P.

