如何:创建缩略图图像

缩略图是图像的较小版本。 可以通过调用 GetThumbnailImage 对象的方法 Image 创建缩略图。

示例:

以下示例从 JPG 文件构造对象 Image 。 原始图像的宽度为 640 像素,高度为 479 像素。 该代码创建宽度为 100 像素且高度为 100 像素的缩略图。

下图显示了缩略图:

显示输出缩略图的屏幕截图。

注释

在此示例中,声明了回调方法,但从未使用过。 这支持 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 

编译代码

前面的示例设计用于 Windows 窗体,它需要 PaintEventArgse,这是 Paint 事件处理程序的参数。 若要运行该示例,请执行以下步骤:

  1. 创建新的 Windows 窗体应用程序。

  2. 将示例代码添加到表单。

  3. 为窗体 Paint 的事件创建处理程序

  4. Paint处理程序中,调用GetThumbnail方法,并为其PaintEventArgs传递e

  5. 查找一个您想制作预览图的图像文件。

  6. GetThumbnail 方法中,指定映像的路径和文件名。

  7. 按 F5 运行示例。

    窗体上会出现一个 100 x 100 的缩略图。

另请参阅