image.jpg通过base64 WP8将字节数组写入writeablebitmap

时间:2013-01-24 22:56:27

标签: bytearray jpeg windows-phone-8 writeablebitmapex

我正在尝试将.jpg或.png文件转换为可写位图。我在另一个源中获取图像并转换为base64编码。删除包装后,我有宽度,高度和base64数据。然后我用:

var base64 = dataurl.Substring(dataurl.IndexOf("base64,") + 7);
binData = Convert.FromBase64String(base64);

这给了我图像的二进制数据。问题确实在于我正在为Windows Phone 8编写这个,所以我限制了我可以使用的库和方法。显而易见的选择是:

using (var stream = new MemoryStream(binData, 0, binDta.Length, true, true))
{
    var wbp = new WriteableBitmap(1,1).LoadJpeg(stream);
}

但是我从WriteableBitmap库得到一个System.ArgumentException。任何适用于Windows Phone 8的想法?

1 个答案:

答案 0 :(得分:1)

您应该确保base64解码数据确实是JPG和PNG之类的有效格式。 然后我建议你尝试WriteableBitmapEx FromStream方法:

var wbp  = new WriteableBitmap(1, 1).FromStream(stream);