Procedimiento para crear imágenes en miniatura

Una imagen en miniatura es una versión pequeña de una imagen. Puede crear una imagen en miniatura si llama al método GetThumbnailImage de un objeto Image.

Ejemplo

En el ejemplo siguiente se construye un objeto Image a partir de un archivo JPG. La imagen original tiene un ancho de 640 píxeles y un alto de 479 píxeles. El código crea una imagen en miniatura con un ancho de 100 píxeles y un alto de 100 píxeles.

En la ilustración siguiente se muestra la imagen en miniatura:

Captura de pantalla en la que se muestra la miniatura de la salida.

Nota

En este ejemplo, se declara un método de devolución de llamada, pero no se usa nunca. Esto admite todas las versiones de GDI+.

public bool ThumbnailCallback()
{
    return true;
}

private void GetThumbnail(PaintEventArgs e)
{
    Image.GetThumbnailImageAbort callback =
        new Image.GetThumbnailImageAbort(ThumbnailCallback);
    Image image = new Bitmap(@"c:\FakePhoto.jpg");
    Image pThumbnail = image.GetThumbnailImage(100, 100, callback, new
       IntPtr());
    e.Graphics.DrawImage(
       pThumbnail,
       10,
       10,
       pThumbnail.Width,
       pThumbnail.Height);
}
Public Function ThumbnailCallback() As Boolean 
        Return True 
End Function 

Private Sub GetThumbnail(ByVal e As PaintEventArgs) 

        Dim callback As New Image.GetThumbnailImageAbort(AddressOf ThumbnailCallback) 
        Dim image As Image = New Bitmap("c:\FakePhoto.jpg") 
        Dim pThumbnail As Image = image.GetThumbnailImage(100, 100, callback, New IntPtr()) 
        e.Graphics.DrawImage(pThumbnail, 10, 10, pThumbnail.Width, pThumbnail.Height) 
End Sub 

Compilar el código

El ejemplo anterior está diseñado para su uso con Windows Forms y requiere PaintEventArgse, que es un parámetro del controlador de eventos Paint. Para ejecutar el ejemplo, siga estos pasos:

  1. Cree una nueva aplicación Windows Forms.

  2. Agregue el código de ejemplo al formulario.

  3. Cree un controlador para el evento Paint del formulario.

  4. En el controlador Paint, llame al método GetThumbnail y pase e para PaintEventArgs.

  5. Busque un archivo de imagen del que quiera crear una miniatura.

  6. En el método GetThumbnail, especifique la ruta de acceso y el nombre de archivo de la imagen.

  7. Presione F5 para ejecutar el ejemplo.

    Aparece una imagen en miniatura de 100 por 100 en el formulario.

Consulte también