我一直在尝试将 png 文件写入和读取到 Windows Phone 8 中的文件夹中。从几个博客站点和 codeplex 中,我发现 WritableBitmap 类有一个扩展,它提供了一些额外的功能。ImageTools具有 PNG 编码器和解码器。但我真的找不到使用它们的例子。
我在这里试图实现的是创建一个名为 page 的文件夹,然后在其中创建一个名为 Ink File 的文件。我想将位图转换为 PNG 并将其存储在那里。位图是从画布上绘制的笔画创建的。ImageTools 类提供了一个名为 ToImage 的函数,用于将画布中的笔画转换为图像。
用于存放
ExtendedImage myImage = InkCanvas.ToImage();
var encoder = new PngEncoder();
var dataFolder = await local.CreateFolderAsync("Page", CreationCollisionOption.OpenIfExists);
StorageFile Ink_File = await dataFolder.CreateFileAsync("InkFile", CreationCollisionOption.ReplaceExisting);
using (var stream = await Ink_File.OpenAsync(Windows.Storage.FileAccessMode.ReadWrite))
{
using (var s = await Ink_File.OpenStreamForWriteAsync())
{
encoder.Encode(myImage, s);
await s.FlushAsync();
s.Close();
}
}
这是一个正确的方法吗?我收到一些空异常。我如何找到图像是否保存为png。这个图片是怎么保存的?它是编码并保存在文件中还是保存为 png itef. 我们如何读回来?