0
最終,我的目標是將通過http從遠程服務器獲得的映像保存到本地存儲。UWP將BitmapImage轉換爲WriteableBitmap
我讀了這樣的
BitmapImage^ im = ref new BitmapImage();
im->CreateOptions = BitmapCreateOptions::IgnoreImageCache;
im->DownloadProgress += ref new DownloadProgressEventHandler(this, &Capture::ShowDownloadProgress);
im->ImageOpened += ref new RoutedEventHandler(this, &Capture::ImageDownloaded);
im->UriSource = ref new Uri(URL);
當ImageDownloaded
被觸發我希望能夠將圖像保存爲.jpg文件。我已經擁有對目標文件夾的寫入權限。
我發現了將圖像讀入WriteableBitmap
的方法,但構造函數需要寬度和高度......但在獲取圖像之前我不知道這一點。
我可以用什麼方法...
1.以有用的格式獲取圖像數據,以便我可以將其寫入磁盤?
2.在Xaml圖像UIelement中顯示它?
3.提供DownloadProgress
和ImageOpened
或downloaded
的回調?
我不能相信這是多麼棘手。
我看不到一種方式來報告下載CreateStreamedFileFromUriAsync的進度。在圖片較大且用戶連接速度較慢的情況下,這是一個很好的反饋,表明它仍在工作。 – Oliver9523
您也可以使用HttpClient下載流(並觀察進度),然後創建StorageFile:https://docs.microsoft.com/en-us/uwp/api/windows.web.http.httpclient –