2016-03-04 59 views

回答

0

我不認爲圖書館可以從內存流只能從 源文件

真的創建縮略圖?因爲我不需要一個庫 - 我可以用標準的C#來做到這一點。

System.Drawing.Bitmap有一個接受流的構造函數。

但不能有文件源,

其實你可以 - 它被稱爲一個臨時文件,並且在.NET(和Windows)爲一個整體機制。真。

但它不是必需的。閱讀手冊,創建一個位圖(通過將你的字節數組打包到MemoryStream中),它應該可以工作。

+0

Thx的答覆,但我想從電影文件創建縮略圖不是一份IMG文件。 – Yvan

2

簡單的c#代碼可以爲你做到這一點。您可以從字節數組創建縮略圖。 首先你的內存流對象轉換爲字節數組通過下面的代碼

byte[] bytes = memoryStream.ToArray(); 

,然後您可以使用下面的方法

public byte[] MakeThumbnail(byte[] myImage, int thumbWidth, int thumbHeight) 
{ 
    using (MemoryStream ms = new MemoryStream()) 
    using (Image thumbnail = Image.FromStream(new MemoryStream(myImage)).GetThumbnailImage(thumbWidth, thumbHeight, null, new IntPtr())) 
    { 
     thumbnail.Save(ms, System.Drawing.Imaging.ImageFormat.Png); 
     return ms.ToArray(); 
    } 
} 
相關問題