public async Task SaveImageDialog(ICanvasDataService canvasData, InkStrokeContainer container)
        {
            var picker = new FileSavePicker();

            picker.FileTypeChoices.Add("JPEG images", new List <string>()
            {
                ".jpg"
            });
            picker.FileTypeChoices.Add("PNG images", new List <string>()
            {
                ".png"
            });
            picker.DefaultFileExtension   = ".jpg";
            picker.SuggestedFileName      = canvasData.Name;
            picker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
            var storageFile = await picker.PickSaveFileAsync();

            if (storageFile != null)
            {
                canvasData.FullPath          = storageFile.Path;
                canvasData.FutureAccessToken = StorageApplicationPermissions.FutureAccessList.Add(storageFile);
                var softwareBitmap = await canvasData.SaveToBitmap(container);

                await ImageWriterService.WriteSoftwareBitmapToFile(storageFile, softwareBitmap);
            }
        }
        public async Task Save(ICanvasDataService canvasData, InkStrokeContainer container)
        {
            if (canvasData.FullPath == null)
            {
                await SaveImageDialog(canvasData, container);
            }
            else
            {
                var softwareBitmap = await canvasData.SaveToBitmap(container);

                var file = await StorageApplicationPermissions.FutureAccessList.GetFileAsync(canvasData.FutureAccessToken);

                await ImageWriterService.WriteSoftwareBitmapToFile(file, softwareBitmap);
            }
        }