有没有办法将 BitmapImage (Windows.UI.Xaml.Media.BitmapImage) 转换为 Byte[] 数组?我没有尝试过任何工作......另一种可能的情况(如果 BitmapImage 无法转换为字节数组)是从网络下载图像,然后将其转换为数组......
但我不知道我该怎么做……如果有人有想法,那就太好了。
当前尝试:
HttpClient http = new HttpClient();
Stream resp = await http.GetStreamAsync("http://localhost/img/test.jpg");
var ras = new InMemoryRandomAccessStream();
await resp.CopyToAsync(ras.AsStreamForWrite());
BitmapImage bi = new BitmapImage();
bi.SetSource(ras);
byte[] pixeBuffer = null;
using (MemoryStream ms = new MemoryStream())
{
int i = bi.PixelHeight;
int i2 = bi.PixelWidth;
WriteableBitmap wb = new WriteableBitmap(bi.PixelWidth, bi.PixelHeight);
Stream s1 = wb.PixelBuffer.AsStream();
s1.CopyTo(ms);
pixeBuffer = ms.ToArray();
}
但它不起作用... i & i2 始终设置为 0。所以 ras 无法正常工作...。这是怎么回事?
谢谢