Хранение изображений в Windows Phone 8
Я действительно ломал голову, пытаясь записать и прочитать файлы png в папку в Windows Phone 8. Из нескольких сайтов блогов и кодекса я обнаружил, что есть расширение класса 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 itsef. И как мы читаем это обратно?
Я проверил это, это, это и многое другое. Я разрабатываю приложение для WP8
1 ответ
Я использовал библиотеку PNG Writer, найденную в ToolStack, и она работает:)