3
讀取圖像那麼,我基本上是試圖做的是從URL(PNG,JPG等)讀取任何類型的圖像,並能夠得到其純粹的像素數據。到目前爲止,我有這個代碼。下載和從URL
public static async Task<BitmapImage> DownloadImageFromWebsiteAsync(string url)
{
try
{
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
using (WebResponse response = await request.GetResponseAsync())
{
Stream imageStream = response.GetResponseStream();
using (var result = new MemoryStream())
{
await imageStream.CopyToAsync(result);
byte[] array = result.ToArray();
return await ByteArrayToBitmapImage(array);
}
}
}
catch (WebException ex)
{
Debug.WriteLine(ex.Message);
return null;
}
}
private static async Task<BitmapImage> ByteArrayToBitmapImage(byte[] byteArray)
{
var bitmapImage = new BitmapImage();
var stream = new InMemoryRandomAccessStream();
await stream.WriteAsync(byteArray.AsBuffer());
stream.Seek(0);
bitmapImage.SetSource(stream);
return bitmapImage;
}
由於像jpeg這樣的編碼,獲取純字節[]作爲像素不起作用。我想知道是他們的任何方式來從URL下載圖像,對其進行解碼,並獲取像素緩衝區。非常感謝幫助。謝謝。
謝謝!這非常有幫助。很好的答案! –
歡迎您:) – Xyroid