【发布时间】:2015-12-03 18:23:30
【问题描述】:
对于我的应用程序,我尝试将WriteableBitmap 转换为byte[] 以存储在数据库中,然后从byte[] 转换为BitmapImage 以显示给用户。
到目前为止,我目前的方法没有产生任何结果:
public byte[] ConvertBitmapToByteArray(WriteableBitmap bitmap)
{
using (Stream stream = bitmap.PixelBuffer.AsStream())
using (MemoryStream memoryStream = new MemoryStream())
{
stream.CopyTo(memoryStream);
return memoryStream.ToArray();
}
}
要将字节数组转换为BitmapImage,我使用:
using (InMemoryRandomAccessStream ms = new InMemoryRandomAccessStream())
{
using (DataWriter writer = new DataWriter(ms.GetOutputStreamAt(0)))
{
writer.WriteBytes((byte[])buffer);
writer.StoreAsync().GetResults();
}
var image = new BitmapImage();
image.SetSource(ms);
imageByteTest.Source = image;
}
我找到了关于 Silverlight 应用程序的很好的文档,但对于 Windows 应用商店通用运行时应用程序的文档却很少。这些方法哪里出错了?
【问题讨论】:
标签: windows-runtime windows-phone-8.1 bytearray bitmapimage writeablebitmap