@Dipumon После просмотра вашего профиля - когда один из ответов решит проблему, не забудьте принять его (зеленая галочка рядом с ответом), это удалит вопрос из очереди без ответа.
отаю над универсальным приложением Windows в Windows 10 SDK, чтобы нарисовать прямоугольник на лицах, распознанных на изображении.
Я использую Win2D для редактирования изображений и рисования прямоугольника на нем. Я могу читать файлы из библиотеки «Изображения», но при попытке сохранить изображение после редактирования выдается следующая ошибка:
В доступе отказано. (Исключение из HRESULT: 0x80070005 (E_ACCESSDENIED))
Ниже приведен метод, который я использовал для рисования прямоугольника на изображении:
private async void DrawRect()
{
CanvasDevice device = CanvasDevice.GetSharedDevice();
CanvasBitmap bitmap = null;
CanvasRenderTarget offscreen = null;
Windows.Storage.StorageFile photofile = await KnownFolders.PicturesLibrary.GetFileAsync("image.jpg");
if(photofile != null)
{
using (var stream = await photofile.OpenReadAsync())
{
bitmap = await CanvasBitmap.LoadAsync(device, stream);
}
}
if(bitmap != null)
{
offscreen = new CanvasRenderTarget(device, bitmap.SizeInPixels.Width, bitmap.SizeInPixels.Height, 96);
using (var ds = offscreen.CreateDrawingSession())
{
ds.Clear(Colors.Transparent);
ds.DrawImage(bitmap);
ds.DrawRectangle(25, 35, 270, 352, Colors.Blue,4);
}
var photoFile = await KnownFolders.PicturesLibrary.CreateFileAsync("image2.jpg", CreationCollisionOption.ReplaceExisting);
if (photofile != null)
{
await offscreen.SaveAsync(photofile.Path);
}
//await offscreen.SaveAsync(photoFile.Path);*/
}
}
Исключение выдается в последней строке за кадром. SaveAsync.
Трассировка стека для вышеуказанной ошибки:
в System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (задача-задача) в System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (задача-задача) в System.Runtime.CompilerServices.TeskAxt_Fence ()
Я установил права доступа к папкам с изображениями в файле appmanifest.
Нужно ли устанавливать некоторые дополнительные разрешения для сохранения образа на диске.
Та же ошибка возникает при попытке сохранить изображение в любом другом месте.