前段時間,一直因為silverlight生成縮略圖而飽受困擾。
雖然聽說過WriteableBitmap這個類,能生成縮略圖。也曾百度上面粗略看過,一直沒找到合適的生成縮略圖的辦法。
今天,再次試過,終于成功。下面貼出代碼,實際的向大家說明一下,縮略圖是如何生成的。
/// <summary>
/// 生成縮略圖
/// </summary>
/// <param name="bitmap">要轉換的位圖</param>
/// <returns>返回WriteableBitmap</returns>
public WriteableBitmap RenderThumbnail(BitmapImage bitmap)
{
Image img = new Image();
img.Width = 150;
img.Height = 150;
img.Source = bitmap;
WriteableBitmap Wimg = new WriteableBitmap(img,null);
Wimg.Invalidate();
return Wimg;
}
下面展示一個示例:
<UserControl x:Class="SilverlightTest.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation