6
我想使用Windows存儲城域樣式應用程序中的C#代碼將WriteableBitmap
圖像轉換爲Byte[]
數組。如何在WinRt應用程序中將WriteableBitmap圖像轉換爲Byte數組
我想使用Windows存儲城域樣式應用程序中的C#代碼將WriteableBitmap
圖像轉換爲Byte[]
數組。如何在WinRt應用程序中將WriteableBitmap圖像轉換爲Byte數組
WriteableBitmap
暴露IBuffer
類型的PixelBuffer
屬性 - 一個Windows運行時接口,其可以被轉換爲一個字節數組與.NET Stream
小號
byte[] ConvertBitmapToByteArray(WriteableBitmap bitmap)
{
using (Stream stream = bitmap.PixelBuffer.AsStream())
using (MemoryStream memoryStream = new MemoryStream())
{
stream.CopyTo(memoryStream);
return memoryStream.ToArray();
}
}
「IBuffer」不包含關於「AsStream」和最好的一個定義擴展方法重載'WindowsRuntimeStreamExtensions.AsStream(IRandomAccessStream)'需要一個'IRandomAccessStream'類型的接收器 – 2015-07-29 14:34:24
@VG由於它是一種擴展方法,因此您需要添加'使用System.Runtime.InteropServices.WindowsRuntime' – SepehrM 2015-08-13 11:49:02
這是在Windows Universal項目中工作的唯一答案(在廣泛搜索之後)。 .Net類和命名空間自WPF以來已經轉移到Win 8 metro商店,以通用Windows ...所以這個答案是黃金! – 2016-02-10 18:31:57