如何在 Windows Phone 8 中将 BitmapImage 更改为 ConvertToByte

How to change BitmapImage to ConvertToByte in Windows Phone 8

 BitmapImage bm = new BitmapImage(new Uri("/Assets/ToolKit.Content/RedIcon/arab-woman.jpg", UriKind.RelativeOrAbsolute));

 using (MemoryStream ms = new MemoryStream())
 {
      WriteableBitmap btmMap = new WriteableBitmap(bm);
      System.Windows.Media.Imaging.Extensions.SaveJpeg(btmMap, ms, bm.PixelWidth, bm.PixelHeight, 0, 100);
      bm = null;
      byte[] a = ms.ToArray();
 }

我正在使用此代码,但显示错误我无法转换为 WriteableBitmap

你有一个错误,因为你没有真正下载图像。如果您在调试器中打开 BitmapImage,我很确定您可以看到这里什么也没有。您可以使用 Image强制 下载。我不知道这是否是一个很好的解决方案,但它是一个可行的解决方案。

Image image = new Image {Source = new BitmapImage(new Uri("/Assets/ToolKit.Content/RedIcon/arab-woman.jpg", UriKind.Relative))};
using (MemoryStream ms = new MemoryStream())
{
    WriteableBitmap btmMap = new WriteableBitmap(image, null);
    btmMap.SaveJpeg(ms, btmMap.PixelWidth, btmMap.PixelHeight, 0, 100);
    byte[] a = ms.ToArray();
}

您可以使用以下代码将位图图像转换为字节数组

byte[] a = System.IO.File.ReadAllBytes("Assets\ToolKit.Content\RedIcon\arab-woman.jpg");