private async void button1_Click(object sender, RoutedEventArgs e) { //await appFolder.CreateFolderAsync("extractFolder",CreationCollisionOption.OpenIfExists); //StorageFolder extractFolder = await appFolder.GetFolderAsync("extractFolder"); StorageFolder webFolder = await localFolder.GetFolderAsync("web"); Windows.Storage.Pickers.FileOpenPicker openPicker = new Windows.Storage.Pickers.FileOpenPicker(); //openPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.PicturesLibrary; //openPicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.Thumbnail; openPicker.FileTypeFilter.Clear(); openPicker.FileTypeFilter.Add(".zip"); StorageFile zipfile = await openPicker.PickSingleFileAsync(); if (zipfile != null) { string zipname = zipfile.Name; Windows.Storage.Streams.IRandomAccessStream fileStream = await zipfile.OpenAsync(FileAccessMode.Read); await zipfile.CopyAsync(localFolder, zipname, NameCollisionOption.ReplaceExisting); //string startPath = @"ms-appdata:///local/start"; //string zipPath = "ms-appdata:///local/matlab_update.zip"; //await webFolder.DeleteAsync(); //await appFolder.CreateFolderAsync("zip",CreationCollisionOption.OpenIfExists); ZipFile.ExtractToDirectory(zipname, @"C:\Downloads\matlab"); } }
private async void Page_Loaded(object sender, RoutedEventArgs e) { StorageFile floorPlanFile = await _curDataset.Folder.GetFileAsync(_curDataset.pathToFloorPlan); using (Windows.Storage.Streams.IRandomAccessStream fileStream = await floorPlanFile.OpenAsync(FileAccessMode.Read)) { // Set the image source to the selected bitmap. BitmapImage bitmapImage = new BitmapImage(); bitmapImage.SetSource(fileStream); floorplanImage.Source = bitmapImage; } sensorListTypeSelect.SelectedIndex = 0; PopulateSensors(); DrawSensors(); sensorDetail.IsReadOnly = true; sensorDetail.Text = ""; sensorDetail.TextWrapping = TextWrapping.Wrap; sensorDetail.Background = new SolidColorBrush(Color.FromArgb(255, 255, 255, 255)); sensorDetail.Opacity = 0.998; sensorDetail.Width = 200; sensorDetail.Visibility = Visibility.Collapsed; Canvas.SetZIndex(sensorDetail, 101); sensorCanvas.Children.Add(sensorDetail); VerticalSplitter.ManipulationMode = ManipulationModes.All; VerticalSplitter.ManipulationDelta += VerticalSplitter_ManipulationDelta; }
public async Task LoadImage() { if (ImageFileName.Contains("ms-appx:Assets")) { BitmapImage bitmapImage = new BitmapImage(new Uri(ImageFileName, UriKind.RelativeOrAbsolute)); ImageBrush brush = new ImageBrush(); brush.AlignmentX = AlignmentX.Left; brush.AlignmentY = AlignmentY.Top; brush.Stretch = Stretch.UniformToFill; _picBrush.ImageSource = bitmapImage; return; } var folder = await StaticHelpers.GetSaveFolder(); var file = await folder.GetFileAsync(ImageFileName); using (Windows.Storage.Streams.IRandomAccessStream fileStream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read)) { // Set the image source to the selected bitmap. Windows.UI.Xaml.Media.Imaging.BitmapImage bitmapImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(); bitmapImage.SetSource(fileStream); _picBrush.ImageSource = bitmapImage; } }
private async void SaveButton_Click(object sender, RoutedEventArgs e) { FileSavePicker savePicker = new FileSavePicker(); savePicker.SuggestedStartLocation = PickerLocationId.DocumentsLibrary; // Dropdown of file types the user can save the file as savePicker.FileTypeChoices.Add("Rich Text", new List<string>() { ".rtf" }); // Default file name if the user does not type one in or select a file to replace savePicker.SuggestedFileName = "New Document"; StorageFile file = await savePicker.PickSaveFileAsync(); if (file != null) { // Prevent updates to the remote version of the file until we // finish making changes and call CompleteUpdatesAsync. CachedFileManager.DeferUpdates(file); // write to file using (Windows.Storage.Streams.IRandomAccessStream randAccStream = await file.OpenAsync(Windows.Storage.FileAccessMode.ReadWrite)) { editor.Document.SaveToStream(Windows.UI.Text.TextGetOptions.FormatRtf, randAccStream); } // Let Windows know that we're finished changing the file so the // other app can update the remote version of the file. FileUpdateStatus status = await CachedFileManager.CompleteUpdatesAsync(file); if (status != FileUpdateStatus.Complete) { Windows.UI.Popups.MessageDialog errorBox = new Windows.UI.Popups.MessageDialog("File " + file.Name + " couldn't be saved."); await errorBox.ShowAsync(); } } }
private async void OpenAppBarButton_Click(object sender, RoutedEventArgs e) { FileOpenPicker openPicker = new FileOpenPicker(); openPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary; openPicker.FileTypeFilter.Add(".jpg"); openPicker.FileTypeFilter.Add(".jpeg"); openPicker.FileTypeFilter.Add(".png"); openPicker.FileTypeFilter.Add(".mp4"); var file = await openPicker.PickSingleFileAsync(); // file is null if user cancels the file picker. if (file != null) { // Open a stream for the selected file. Windows.Storage.Streams.IRandomAccessStream fileStream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read); // Set the image source to the selected bitmap. Windows.UI.Xaml.Media.Imaging.BitmapImage bitmapImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(); bitmapImage.SetSource(fileStream); image.Source = bitmapImage; this.DataContext = file; // Add picked file to MostRecentlyUsedList. } else { MessageDialog msgbox = new MessageDialog("Файл не выбран", "Внимание"); await msgbox.ShowAsync(); } }
public static async Task <Windows.Storage.Streams.IRandomAccessStream> GetStreamFromUrl(string url) { Windows.Storage.Streams.IRandomAccessStream returnStream = null; try { using (var cli = new Windows.Web.Http.HttpClient()) { var resp = await cli.GetAsync(new Uri(url)); var b = new Windows.UI.Xaml.Media.Imaging.BitmapImage(); if (resp != null && resp.StatusCode == Windows.Web.Http.HttpStatusCode.Ok) { using (var stream = await resp.Content.ReadAsInputStreamAsync()) { var memStream = new MemoryStream(); if (memStream != null) { await stream.AsStreamForRead().CopyToAsync(memStream); memStream.Position = 0; returnStream = memStream.AsRandomAccessStream(); } } } } } catch (Exception e) { System.Diagnostics.Debug.WriteLine("Error while downloading the attachment: " + e.Message); } return(returnStream); }
private async void SaveButton_OnClick(object sender, RoutedEventArgs e) { string filename = "output.pdf"; Stream stream = pdfViewerControl.Save(); stream.Position = 0; FileSavePicker savePicker = new FileSavePicker { DefaultFileExtension = ".pdf", SuggestedFileName = filename }; savePicker.FileTypeChoices.Add("Adobe PDF Document", new List <string>() { ".pdf" }); StorageFile stFile = await savePicker.PickSaveFileAsync(); if (stFile != null) { Windows.Storage.Streams.IRandomAccessStream fileStream = await stFile.OpenAsync(FileAccessMode.ReadWrite); Stream streamForWrite = fileStream.AsStreamForWrite(); streamForWrite.SetLength(0); streamForWrite.Write((stream as MemoryStream).ToArray(), 0, (int)stream.Length); streamForWrite.Flush(); streamForWrite.Dispose(); fileStream.Dispose(); MessageDialog msgDialog = new MessageDialog("File has been saved successfully."); IUICommand cmd = await msgDialog.ShowAsync(); } }
public async Task SetImageAsync(Windows.Storage.Streams.IRandomAccessStream imageStream) { var bmp = new Windows.UI.Xaml.Media.Imaging.BitmapImage(); await bmp.SetSourceAsync(imageStream); this.canvasImage.Source = bmp; }
private async void OpenButton(object sender, RoutedEventArgs e) { Windows.Storage.Pickers.FileOpenPicker open = new Windows.Storage.Pickers.FileOpenPicker(); open.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.DocumentsLibrary; open.FileTypeFilter.Add(".txt"); Windows.Storage.StorageFile File = await open.PickSingleFileAsync(); if (File != null) { try { Windows.Storage.Streams.IRandomAccessStream randAccStream = await File.OpenAsync(Windows.Storage.FileAccessMode.Read); editor.Document.LoadFromStream(Windows.UI.Text.TextSetOptions.None, randAccStream); AppTitle.Text = File.Name; } catch (Exception) { ContentDialog errorDialog = new ContentDialog() { Title = "File open error", Content = "Sorry, I couldn't open the file.", PrimaryButtonText = "OK" }; await errorDialog.ShowAsync(); } } }
private async void ShowVideo_Loaded(object sender, RoutedEventArgs e) { DBControl dBControl = new DBControl(); videos = dBControl.readvideo(); StorageFolder folder = await(Windows.Storage.KnownFolders.VideosLibrary).GetFolderAsync("uwpVideo"); try { var file = await folder.GetFileAsync("1.mp4"); if (file != null) { Windows.Storage.Streams.IRandomAccessStream stream = await file.OpenAsync(FileAccessMode.Read); this.meVoideo.SetSource(stream, ""); this.meVoideo.Play(); } } catch (Exception ex) { return; } }
//更新显示的图片 private async void Ellipse_Tapped(object sender, TappedRoutedEventArgs e) { Windows.Storage.Pickers.FileOpenPicker openPicker = new Windows.Storage.Pickers.FileOpenPicker(); openPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.PicturesLibrary; openPicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.Thumbnail; openPicker.FileTypeFilter.Clear(); openPicker.FileTypeFilter.Add(".png"); openPicker.FileTypeFilter.Add(".jpeg"); openPicker.FileTypeFilter.Add(".jpg"); file = await openPicker.PickSingleFileAsync(); if (file != null) { using (Windows.Storage.Streams.IRandomAccessStream fileStream = await file.OpenAsync(FileAccessMode.Read)) { BitmapImage bitmapImage = new BitmapImage(); bitmapImage.SetSource(fileStream); ava.ImageSource = bitmapImage; } } }
// Fetches all the data for the specified file public async static Task <ImageItem> FromStorageFile( StorageFile f, CancellationToken ct, Options options = Options.Image) { ImageItem item = new ImageItem() { Filename = f.Name, File = f, ViewMode = options }; ct.ThrowIfCancellationRequested(); BitmapImage img = new BitmapImage(); if (options == Options.Image) { using (Windows.Storage.Streams.IRandomAccessStream fileStream = await f.OpenAsync(Windows.Storage.FileAccessMode.Read)) { img.SetSource(fileStream); } } else if (options == Options.Thumbnail) { StorageItemThumbnail thumb = await f.GetThumbnailAsync(ThumbnailMode.SingleItem).AsTask(ct); ct.ThrowIfCancellationRequested(); await img.SetSourceAsync(thumb).AsTask(ct); } item.ImageData = img; return(item); }
private async void OpenFile_Click(object sender, RoutedEventArgs e) { FileOpenPicker picker = new FileOpenPicker(); picker.ViewMode = PickerViewMode.Thumbnail; picker.SuggestedStartLocation = PickerLocationId.PicturesLibrary; picker.FileTypeFilter.Add(".jpg"); picker.FileTypeFilter.Add(".jpeg"); picker.FileTypeFilter.Add(".png"); StorageFile file = await picker.PickSingleFileAsync(); if (file != null) { string name = file.Path.ToString(); using (Windows.Storage.Streams.IRandomAccessStream fileStream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read)) { Windows.UI.Xaml.Media.Imaging.BitmapImage bitmapImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(); /*Img.Source = new BitmapImage(new Uri(name, UriKind.Relative));*/ bitmapImage.SetSource(fileStream); Img.Source = bitmapImage; } } }
private async void toggleSwitch_Toggled(object sender, RoutedEventArgs e) { StorageFolder webFolder = await localFolder.GetFolderAsync("web"); IStorageFile namesave = await appFolder.CreateFileAsync("namesave", CreationCollisionOption.OpenIfExists); if (importSwitch.IsOn == true) { Windows.Storage.Pickers.FileOpenPicker openPicker = new Windows.Storage.Pickers.FileOpenPicker(); //openPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.PicturesLibrary; //openPicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.Thumbnail; openPicker.FileTypeFilter.Clear(); openPicker.FileTypeFilter.Add(".html"); StorageFile updatefile = await openPicker.PickSingleFileAsync(); if (updatefile != null) { string updatename = updatefile.Name; Windows.Storage.Streams.IRandomAccessStream fileStream = await updatefile.OpenAsync(FileAccessMode.Read); await updatefile.CopyAsync(webFolder, updatename, NameCollisionOption.ReplaceExisting); //var buffer = Windows.Security.Cryptography.CryptographicBuffer.ConvertStringToBinary( //updatename , Windows.Security.Cryptography.BinaryStringEncoding.Utf8); //await Windows.Storage.FileIO.WriteBufferAsync(namesave , buffer); await FileIO.WriteTextAsync(namesave, updatename, 0); text.Text = "已更新:" + updatename; Uri Uri = new Uri("ms-appx-web:///web/" + updatename); updateweb.Source = Uri; } else { string updatename = "index.html"; await FileIO.WriteTextAsync(namesave, updatename, 0); } } else { IStorageFile name = await appFolder.GetFileAsync("namesave"); string updatename = await FileIO.ReadTextAsync(name); //await localFolder.CreateFolderAsync("web", CreationCollisionOption.GenerateUniqueName); StorageFile restorefile = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///originweb/" + updatename)); //string restorename = restorefile.Name; await restorefile.CopyAsync(webFolder, updatename, NameCollisionOption.ReplaceExisting); Uri Uri = new Uri("ms-appx-web:///web/" + updatename); updateweb.Source = Uri; await namesave.DeleteAsync(); text.Text = "已还原:" + updatename; } }
/*public static IAsyncOperation<bool> RenderToPngAsync(this UIElement lt, string filename) * { * return RenderToPngAsync(lt, filename).AsAsyncOperation(); * } */ public static async Task <bool> RenderToPngAsync(this UIElement lt, string filename) { #if __UAP__ var y = new RenderTargetBitmap(); await y.RenderAsync(lt); Windows.Storage.Streams.IBuffer px = await y.GetPixelsAsync(); StorageFile file = await ApplicationData.Current.LocalFolder.CreateFileAsync(filename, CreationCollisionOption.ReplaceExisting); if (file != null) { CachedFileManager.DeferUpdates(file); using (Windows.Storage.Streams.IRandomAccessStream stream = await file.OpenAsync(FileAccessMode.ReadWrite)) { BitmapEncoder encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.PngEncoderId, stream); encoder.IsThumbnailGenerated = false; encoder.SetPixelData(BitmapPixelFormat.Bgra8, BitmapAlphaMode.Straight, (uint)y.PixelWidth, (uint)y.PixelHeight, displayInfo.RawDpiX, displayInfo.RawDpiY, px.ToArray()); await encoder.FlushAsync(); } await CachedFileManager.CompleteUpdatesAsync(file); return(true); } #endif return(false); }
private async void SelectPictureButton_Click(object sender, RoutedEventArgs e) { Windows.Storage.Pickers.FileOpenPicker filePicker = new Windows.Storage.Pickers.FileOpenPicker(); filePicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.Thumbnail; filePicker.FileTypeFilter.Add(".jpg"); filePicker.FileTypeFilter.Add(".jpeg"); filePicker.FileTypeFilter.Add(".png"); filePicker.FileTypeFilter.Add(".bmp"); filePicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.PicturesLibrary; StorageFile file = await filePicker.PickSingleFileAsync(); if (file != null) { using (Windows.Storage.Streams.IRandomAccessStream fileStream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read)) { // Set the image source to the selected bitmap. Windows.UI.Xaml.Media.Imaging.BitmapImage bitmapImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(); bitmapImage.SetSource(fileStream); Image.Source = bitmapImage; ImageName = file.Name; ImagePath = file.Path; Windows.Storage.StorageFolder targetFolder = await StorageFolder.GetFolderFromPathAsync(Models.TodoItem.ImagePath); await file.CopyAsync(targetFolder, ImageName, NameCollisionOption.ReplaceExisting); } } }
//Uploading Music File Button private async void UploadButton_Click(object sender, RoutedEventArgs e) { //Opening User's personal Music Library to select files var picker = new Windows.Storage.Pickers.FileOpenPicker { ViewMode = Windows.Storage.Pickers.PickerViewMode.Thumbnail, SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.MusicLibrary }; //Accepted file type = mp3 (only mp3 files display for user selection) picker.FileTypeFilter.Add(".mp3"); Windows.Storage.StorageFile file = await picker.PickSingleFileAsync(); if (file != null) { // Application now has read/write access to the picked file //Storing File for future use Windows.Storage.AccessCache.StorageApplicationPermissions.FutureAccessList.Add(file); // Open a stream for the selected file. // The 'using' block ensures the stream is disposed // after the music is loaded. using (Windows.Storage.Streams.IRandomAccessStream fileStream = await file.OpenAsync(Windows.Storage.FileAccessMode.ReadWrite)); } }
private async void Button_Click_1(object sender, RoutedEventArgs e) { Windows.Storage.Pickers.FileOpenPicker openPicker = new Windows.Storage.Pickers.FileOpenPicker(); openPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.PicturesLibrary; openPicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.Thumbnail; // Filter to include a sample subset of file types. openPicker.FileTypeFilter.Clear(); openPicker.FileTypeFilter.Add(".bmp"); openPicker.FileTypeFilter.Add(".png"); openPicker.FileTypeFilter.Add(".jpeg"); openPicker.FileTypeFilter.Add(".jpg"); // Open the file picker. Windows.Storage.StorageFile file = await openPicker.PickSingleFileAsync(); // file is null if user cancels the file picker. if (file != null) { // Open a stream for the selected file. Windows.Storage.Streams.IRandomAccessStream fileStream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read); // Set the image source to the selected bitmap. Windows.UI.Xaml.Media.Imaging.BitmapImage bitmapImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(); bitmapImage.SetSource(fileStream); displayImage.Source = bitmapImage; this.DataContext = file; } }
public static async System.Threading.Tasks.Task <byte[]> ReadBytesFromFileAsync(string fileName) { try { Windows.Storage.StorageFolder tempFolder = await Windows.Storage.StorageFolder.GetFolderFromPathAsync(Options.options.tempFolderPath); Windows.Storage.StorageFile file = await tempFolder.GetFileAsyncServiceAsync(text, apiArgs); // TODO: obsolete to use DataReader? use await Windows.Storage.FileIO.Read...(file); using (Windows.Storage.Streams.IRandomAccessStream stream = await file.OpenReadAsync()) { using (Windows.Storage.Streams.DataReader reader = new Windows.Storage.Streams.DataReader(stream.GetInputStreamAt(0))) { await reader.LoadAsync((uint)stream.Size); byte[] bytes = new byte[stream.Size]; reader.ReadBytes(bytes); return(bytes); } } } catch (Exception ex) { Log.WriteLine(ex.Message); return(null); } }
/// <summary> /// Populates the page with content passed during navigation. Any saved state is also /// provided when recreating a page from a prior session. /// </summary> /// <param name="navigationParameter">The parameter value passed to /// <see cref="Frame.Navigate(Type, Object)"/> when this page was initially requested. /// </param> /// <param name="pageState">A dictionary of state preserved by this page during an earlier /// session. This will be null the first time a page is visited.</param> protected async override void LoadState(Object navigationParameter, Dictionary <String, Object> pageState) { if (pageState != null && pageState.ContainsKey("mruToken")) { object value = null; if (pageState.TryGetValue("mruToken", out value)) { if (value != null) { mruToken = value.ToString(); // Open the file via the token that you stored when adding this file into the MRU list. Windows.Storage.StorageFile file = await Windows.Storage.AccessCache.StorageApplicationPermissions.MostRecentlyUsedList.GetFileAsync(mruToken); if (file != null) { // Open a stream for the selected file. Windows.Storage.Streams.IRandomAccessStream fileStream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read); // Set the image source to a bitmap. Windows.UI.Xaml.Media.Imaging.BitmapImage bitmapImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(); bitmapImage.SetSource(fileStream); displayImage.Source = bitmapImage; // Set the data context for the page. this.DataContext = file; } } } } }
public static async System.Threading.Tasks.Task PlayFileAsync(Windows.Storage.Streams.IRandomAccessStream stream, string ContentType) { Log.WriteLine("ContentType:" + ContentType); mediaElement.Stop(); mediaElement.SetSource(stream, ContentType); mediaElement.Play(); }
/// <summary> /// 音を再生します。 /// </summary> /// <param name="filename">(<see cref="string"/>)ファイル名</param> /// <param name="audiocategory">(<see cref="AudioCategory"/>)オーディオ情報の目的</param> public static IAsyncInfo PlayAsync(string filename, AudioCategory audiocategory) { if (rootPage == null) { if (ApplicationSetting.rootPage != null) { rootPage = ApplicationSetting.rootPage; } else { throw new NullReferenceException("Tools.Screens.rootPage に 表示するページ(通常は this)を入れてください。"); } } return(AsyncInfo.Run((token) => { return Task.Run(async() => { try { await rootPage.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, async() => { var uri = new Uri("ms-appx:///" + filename, UriKind.Absolute); var file = await StorageFile.GetFileFromApplicationUriAsync(uri); stream = await file.OpenAsync(FileAccessMode.Read); MediaElement me = new MediaElement(); me.SetSource(stream, file.ContentType); me.AutoPlay = false; me.AreTransportControlsEnabled = true; me.AudioCategory = audiocategory; me.Play(); }); } catch (Exception ex) { Debug.Fail("Sounds.PlayAsync", ex.Message); } }); })); }
private async void AddAppBarButton_Click(object sender, RoutedEventArgs e) { var camera = new CameraCaptureUI(); StorageFile file = await camera.CaptureFileAsync(CameraCaptureUIMode.PhotoOrVideo); if (file != null) { // Open a stream for the selected file. Windows.Storage.Streams.IRandomAccessStream fileStream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read); // Set the image source to the selected bitmap. Windows.UI.Xaml.Media.Imaging.BitmapImage bitmapImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(); bitmapImage.SetSource(fileStream); image.Source = bitmapImage; this.DataContext = file; // Add picked file to MostRecentlyUsedList. } else { MessageDialog msgbox = new MessageDialog("Файл не выбран", "Внимание"); await msgbox.ShowAsync(); } }
private async void btnImageLoader_Click(object sender, RoutedEventArgs e) { // Create FileOpenPicker instance FileOpenPicker fileOpenPicker = new FileOpenPicker(); // Set SuggestedStartLocation fileOpenPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary; // Set ViewMode fileOpenPicker.ViewMode = PickerViewMode.Thumbnail; // Filter for file types. For example, if you want to open text files, // you will add .txt to the list. fileOpenPicker.FileTypeFilter.Clear(); fileOpenPicker.FileTypeFilter.Add(".png"); fileOpenPicker.FileTypeFilter.Add(".jpeg"); fileOpenPicker.FileTypeFilter.Add(".jpg"); fileOpenPicker.FileTypeFilter.Add(".bmp"); // Open FileOpenPicker StorageFile file = await fileOpenPicker.PickSingleFileAsync(); //var res = await file.GetScaledImageAsThumbnailAsync(ThumbnailMode.PicturesView, 100, ThumbnailOptions.ResizeThumbnail); if (file != null) { FileNameTextBox.Text = file.Name; // Open a stream Windows.Storage.Streams.IRandomAccessStream fileStream = await file.OpenAsync(FileAccessMode.Read); // Create a BitmapImage and Set stream as source BitmapImage bitmapImage = new BitmapImage(); bitmapImage.SetSource(fileStream); // Set BitmapImage Source ImageViewer.Source = bitmapImage; await file.CopyAsync(ApplicationData.Current.LocalFolder, file.Name, NameCollisionOption.ReplaceExisting); } }
//Save the image in bmp format private async void ClickSaveButton(object sender, RoutedEventArgs e) { const int PIXEL = 96; RenderTargetBitmap renderTargetBitmap = new RenderTargetBitmap(); await renderTargetBitmap.RenderAsync(_canvas); var picker = new Windows.Storage.Pickers.FileSavePicker(); picker.FileTypeChoices.Add("點陣圖/Bitmap Image", new string[] { ".bmp" }); Windows.Storage.StorageFile file = await picker.PickSaveFileAsync(); if (file != null) { var pixels = await renderTargetBitmap.GetPixelsAsync(); using (Windows.Storage.Streams.IRandomAccessStream stream = await file.OpenAsync(Windows.Storage.FileAccessMode.ReadWrite)) { var encoder = await Windows.Graphics.Imaging.BitmapEncoder.CreateAsync(Windows.Graphics.Imaging.BitmapEncoder.BmpEncoderId, stream); byte[] bytes = pixels.ToArray(); encoder.SetPixelData(Windows.Graphics.Imaging.BitmapPixelFormat.Bgra8, Windows.Graphics.Imaging.BitmapAlphaMode.Ignore, (uint)_canvas.ActualWidth, (uint)_canvas.ActualHeight, PIXEL, PIXEL, bytes); await encoder.FlushAsync(); } } }
/// <summary> /// Load RTF-Files where Richeditbox LoadeEvent is fired /// Tag-Value needs to be filled /// </summary> /// <param name="sender">UIElement Richeditbox</param> /// <param name="e">RoutedEventArgs</param> public async void rtb_Loaded(object sender, RoutedEventArgs e) { try { if (sender is RichEditBox textbox) { StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(new Uri(((string)textbox.Tag).GetLocalized())); if (file != null) { Windows.Storage.Streams.IRandomAccessStream randAccStream = await file.OpenAsync(FileAccessMode.Read); // Load the file into the Document property of the RichEditBox. textbox.Document.LoadFromStream(Windows.UI.Text.TextSetOptions.FormatRtf, randAccStream); textbox.Document.Selection.SetRange(0, int.MaxValue); ITextSelection selectedText = textbox.Document.Selection; if (selectedText != null && textbox.Foreground is SolidColorBrush color) { selectedText.CharacterFormat.ForegroundColor = color.Color; } } } } catch (Exception) { } }
//} private async void OpenButton_Click(object sender, RoutedEventArgs e) { // Open a text file. Windows.Storage.Pickers.FileOpenPicker open = new Windows.Storage.Pickers.FileOpenPicker(); open.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.DocumentsLibrary; open.FileTypeFilter.Add(".rtf"); Windows.Storage.StorageFile file = await open.PickSingleFileAsync(); if (file != null) { try { Windows.Storage.Streams.IRandomAccessStream randAccStream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read); // Load the file into the Document property of the RichEditBox. editor.Document.LoadFromStream(Windows.UI.Text.TextSetOptions.FormatRtf, randAccStream); } catch (Exception) { ContentDialog errorDialog = new ContentDialog() { Title = "File open error", Content = "Sorry, I couldn't open the file.", PrimaryButtonText = "Ok" }; await errorDialog.ShowAsync(); } } }
public async Task RenderToStreamAsync(Windows.Storage.Streams.IRandomAccessStream stream) { if (Option != null) { //Strange code. Maybe fix needed. if (Option is PageOptionsControl) { LastOption = (PageOptions)((PageOptionsControl)this.Option); } else { LastOption = Option; } var pdfOption = new pdf.PdfPageRenderOptions(); if (Option.TargetHeight / Content.Size.Height < Option.TargetWidth / Content.Size.Width) { pdfOption.DestinationHeight = (uint)Option.TargetHeight; } else { pdfOption.DestinationWidth = (uint)Option.TargetWidth; } await Content.RenderToStreamAsync(stream, pdfOption); } else { await Content.RenderToStreamAsync(stream); } }
private async void SaveAsFileViewerCommand() { Stream stream = pdfViewer.Save(); stream.Position = 0; FileSavePicker savePicker = new FileSavePicker(); savePicker.DefaultFileExtension = ".pdf"; savePicker.FileTypeChoices.Add("Adobe PDF Document", new List <string>() { ".pdf" }); StorageFile stFile = await savePicker.PickSaveFileAsync(); if (stFile != null) { Windows.Storage.Streams.IRandomAccessStream fileStream = await stFile.OpenAsync(FileAccessMode.ReadWrite); Stream st = fileStream.AsStreamForWrite(); st.SetLength(0); st.Write((stream as MemoryStream).ToArray(), 0, (int)stream.Length); st.Flush(); st.Dispose(); fileStream.Dispose(); } }
/// <summary> /// Initializes an image from a given fileStream /// </summary> /// <param name="fileStream">The source from within the files where the image was /// uploaded </param> public ImageInput(Windows.Storage.Streams.IRandomAccessStream fileStream) { // Initialize the image once the user has picked an image from file var bitMap = new BitmapImage(); bitMap.SetSource(fileStream); var rectGeo = new Windows.UI.Xaml.Media.RectangleGeometry(); var rect = new Windows.Foundation.Rect(); rect.X = 100; rect.Y = 100; rect.Width = 500; rect.Height = 500; rectGeo.Rect = rect; UploadImage = new Image { Source = bitMap, // Set the Image in the center of the view Margin = new Thickness( (OffsetX + ViewWidth / 2) / Zoom, (OffsetY + ViewHeight / 2) / Zoom, 0, 0), Clip = rectGeo }; // Allows the image to respond to touch, pinch, and drag events AllowTouch(UploadImage); AllowResize(UploadImage); AllowTranslation(UploadImage); // Add the image to the Connector's scale dictionary Connector.Scales.Add(UploadImage, 1); }