Como criar imagens em miniatura

Uma imagem em miniatura é uma versão pequena de uma imagem. Você pode criar uma imagem em miniatura chamando o GetThumbnailImage método de um Image objeto.

Exemplo

O exemplo a seguir constrói um objeto a partir de um Image arquivo JPG. A imagem original tem uma largura de 640 pixels e uma altura de 479 pixels. O código cria uma imagem em miniatura que tem uma largura de 100 pixels e uma altura de 100 pixels.

A ilustração a seguir mostra a imagem em miniatura:

Screenshot that shows the output thumbnail.

Observação

Neste exemplo, um método de retorno de chamada é declarado, mas nunca usado. Isso dá suporte a todas as versões do 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 

Compilando o código

O exemplo anterior foi projetado para uso com o Paint Windows Forms e requer PaintEventArgse, que é um parâmetro do manipulador de eventos. Para executar o exemplo, siga estas etapas:

  1. Crie um novo aplicativo Windows Forms.

  2. Adicione o código de exemplo ao formulário.

  3. Criar um manipulador para o evento do Paint formulário

  4. Paint No manipulador, chame o GetThumbnail método e passe e para PaintEventArgs.

  5. Localize um arquivo de imagem do qual deseja criar uma miniatura.

  6. No método GetThumbnail, especifique o caminho e nome do arquivo para sua imagem.

  7. Pressione F5 para executar o exemplo.

    Uma imagem em miniatura de 100 por 100 aparece no formulário.

Confira também