Foros del Web » Programación para mayores de 30 ;) » .NET »

Por favor, ayuda con "GetThumbnailImage"

Estas en el tema de Por favor, ayuda con "GetThumbnailImage" en el foro de .NET en Foros del Web. Saludos a todos! En primer lugar quiero comentar que soy un negado en .NET Algo domino en asp y tengo una función (showimage.aspx) .net que ...
  #1 (permalink)  
Antiguo 25/02/2004, 17:21
 
Fecha de Ingreso: diciembre-2003
Mensajes: 141
Antigüedad: 20 años, 4 meses
Puntos: 0
Por favor, ayuda con "GetThumbnailImage"

Saludos a todos!
En primer lugar quiero comentar que soy un negado en .NET

Algo domino en asp y tengo una función (showimage.aspx) .net que lo que me hace es crear los tumbnails a partir de una imágen más grande. Las imágenes subidas son *.jpg y el tumbnail también los creo *.jpg . El problema está en que al crear la miniatura, pierde mucha calidad, supongo que por la compresión.

Mi pregunta: ¿Hay alguna manera para decirle que cree la imágen a una calidad fija?, por ejemplo, en la escala de compresión de 0 - 100% de calidad de los archivos *.jpg, me los crea aproximadamente a un 40% de calidad, pero desearia como mínimo un 70%...

No se si me expliqué bien, pero como ya comenté no tengo mucha idea.

Gracias por todo!
Saludos.
  #2 (permalink)  
Antiguo 26/02/2004, 10:08
Avatar de lucxx  
Fecha de Ingreso: noviembre-2003
Ubicación: Madrid
Mensajes: 321
Antigüedad: 20 años, 5 meses
Puntos: 0
Hola NeoZ

Creo que esto te puede servir, yo utilizo una version mejorada y en vb pero no tengo mi codigo a mano, asi que ahi va:

http://authors.aspalliance.com/chris...sion.aspx.aspx

Saludos

PD: pasarlo a vb es sencillo, pero si hace falta no tienes + que decirlo
  #3 (permalink)  
Antiguo 03/03/2004, 10:44
 
Fecha de Ingreso: diciembre-2003
Mensajes: 141
Antigüedad: 20 años, 4 meses
Puntos: 0
lucxx, disculpa ante todo por tardar en responder. He estado ausente bastantes dias.

Intentaré ver que puedo hacer con lo que me propones, como te comenté estoy muy pez con .NET y he hecho algunos pinillos con asp, pero este se me escapa...

El código en cuestión que utilizo es el siguiente:

Código:
<%@Import Namespace="System.Drawing.Imaging" %>
<script language="VB" runat="server">
  Function ThumbnailCallback() as Boolean
    Return False
  End Function


  Sub Page_Load(sender as Object, e as EventArgs)
  
    'Read in the image filename to create a thumbnail of
    Dim imageUrl as String = Request.QueryString("img")
    
    'Read in the width and height
Dim imageHeight as Integer = Request.QueryString("h")
Dim imageWidth as Integer = Request.QueryString("w")

    'Make sure that the image URL doesn't contain any /'s or \'s
    'If imageUrl.IndexOf("/") >= 0 Or imageUrl.IndexOf("\") >= 0 then
      'We found a / or \
     ' Response.End()
    'End If
    
    
    Dim fullSizeImg as System.Drawing.Image
    fullSizeImg = System.Drawing.Image.FromFile(Server.MapPath(imageUrl))

    'Do we need to create a thumbnail?
    Response.ContentType = "image/jpeg"
    If imageHeight > 0 and imageWidth > 0 then
      Dim dummyCallBack as System.Drawing.Image.GetThumbNailImageAbort
      dummyCallBack = New System.Drawing.Image.GetThumbnailImageAbort(AddressOf ThumbnailCallback)

      Dim thumbNailImg as System.Drawing.Image
      thumbNailImg = fullSizeImg.GetThumbnailImage(imageWidth, imageHeight, dummyCallBack, IntPtr.Zero)

      'thumbNailImg.Save(Response.OutputStream, ImageFormat.Jpeg)
	  thumbNailImg.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg) 
    Else
      'fullSizeImg.Save(Response.OutputStream, ImageFormat.Jpeg)
	  fullSizeImg.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg) 
    End If
    
  End Sub
</script>
Le proporciono un "h" y un "w", en función de una comparación que hago anteriormente con asp y el me crea el thumbnail solito.

El código creo que lo saqué de www.4guysfromrolla.com

Aplicar lo que comentas, no se si es fácil o no (para mi un montón), voy a probar...

Pues eso, muchisimas gracias por todo.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:59.