5
我使用codeplex的ImageTools來保存畫布爲PNG;然而,當我使用writeableBitmap.SaveJpeg()
時,我遇到了同樣的問題。因此,問題不在於圖像類型,而在於我如何在IsolatedStorage
中進行保存或加載。將圖像保存並加載到IsolatedStorage需要保存兩次
當我通過按保存按鈕保存圖像文件存在,但是當我加載圖像沒有出現。如果我保存圖像兩次,圖像加載並正確顯示。
以下是我的代碼。
保存文件:
ExtendedImage myImage = myCanvas.ToImage();
using (var isoStore = IsolatedStorageFile.GetUserStoreForApplication())
{
if (isoStore.FileExists("image.png"))
isoStore.DeleteFile("image.png");
using (var fileStream = isoStore.CreateFile("image.png"))
{
myImage.WriteToStream(fileStream, "image.png");
fileStream.Close();
}
}
加載文件
BitmapImage bi = new BitmapImage();
using (var isoStore = IsolatedStorageFile.GetUserStoreForApplication())
{
if (isoStore.FileExists("image.png"))
{
using (var fileStream = isoStore.OpenFile("image.png", FileMode.Open))
{
bi.SetSource(fileStream);
this.img.Height = bi.PixelHeight;
this.img.Width = bi.PixelWidth;
this.img.Source = bi;
}
}
}
剛剛嘗試了你的代碼,似乎工作正常,都在模擬器上(諾基亞Lumia 920)... –
奇數。我已經嘗試過仿真器和設備(L920,針對Windows Phone 8.0的Visual Studio 2012),並且這兩個錯誤都是持續存在的。不過,謝謝你讓我知道它有效。 –