• Viernes 8 de Noviembre de 2024, 20:22

Autor Tema:  Ajustar Picturebox A La Imagen  (Leído 1533 veces)

Skipped

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Ajustar Picturebox A La Imagen
« en: Sábado 14 de Julio de 2007, 18:25 »
0
Hola Todos:

Estoy haciendo un programa que achica una imagen grande sin deformarla, el codigo es el suguiente:

Código: Text
  1. Sub Redimensionar(Origen As PictureBox, Destino As PictureBox)
  2. HeightDestino = Destino.ScaleWidth * Origen.ScaleHeight \ Origen.ScaleWidth
  3. Destino.PaintPicture Origen.Image, 0, 0, Destino.ScaleWidth, HeightDestino
  4. Destino.AutoSize = True
  5. End Sub
  6.  

Bueno el problema es que el picturebox queda mas grande que la imagen achicada... entonces quiero que el picturebox se ajuste al tamaño de la imagen, para eso use Destino.AutoSize = True pero nose porque no funciona..

¿alguna idea?
Gracias,
Skipped

cpmario

  • Miembro HIPER activo
  • ****
  • Mensajes: 629
    • Ver Perfil
    • http://www.cpimario.com
Re: Ajustar Picturebox A La Imagen
« Respuesta #1 en: Domingo 15 de Julio de 2007, 00:34 »
0
Tengo un proyecto que muestra como adaptar el tamaño de una imagen al tamaño del PictureBox.

Te lo adjunto..
 :comp:
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.

Nebire

  • Miembro HIPER activo
  • ****
  • Mensajes: 670
    • Ver Perfil
Re: Ajustar Picturebox A La Imagen
« Respuesta #2 en: Martes 17 de Julio de 2007, 17:34 »
0
Es bastante sencillo...

En vez de alojar la imagen en el picturebox, haz lo siguiente:

coloca un control image dentro del picturebox
cambia su propiedad strecht a true

Ya está, para cambiar el tamaño de la imagen sin perder sus proporciones multiplicas el ancho y el alto del control image por el mismo factor

Código: Text
  1. Sub Redimensionar(zoom as integer, destino as control)
  2.      destino.height=destino.height * zoom
  3.      destino.width=destino.width * zoom
  4. End Sub
  5.  

eventualmente, puedes querer que el picturebox tenga el mismo tamaño que la imagen entonces añades este código a la subrutina anterior

Código: Text
  1. picturebox1.height=image1.height
  2. picturebox1.width=image1.width
  3.  
«Ma non troppo»
----> ModoVacaciones = False<----