windows-8 – 如何在Windows 8 metro应用程序中将缩略图保存到设
发布时间:2020-12-14 02:05:16 所属栏目:Windows 来源:网络整理
导读:我正在创建缩略图并使用此代码在框架中显示 平台 – 使用c#的windows 8 metro应用程序 http://code.msdn.microsoft.com/windowsapps/File-and-folder-thumbnail-1d530e5d 在使用c#的windows 8 metro应用程序中.我需要保存或存储(在设备中)我在运行时创建的缩
我正在创建缩略图并使用此代码在框架中显示
平台 – >使用c#的windows 8 metro应用程序 http://code.msdn.microsoft.com/windowsapps/File-and-folder-thumbnail-1d530e5d 在使用c#的windows 8 metro应用程序中.我需要保存或存储(在设备中)我在运行时创建的缩略图.在constants.cs类文件的DisplayResult()中,我需要在设备中保存该图像如何实现这一点.请给我一些想法或示例我是移动设备的新手,从未参与过图像和缩略图部分.提前致谢 . 解决方法
试试这个.以下代码将在TempFolder中保存所选音频文件的专辑封面
private async void btnPickFile_Click(object sender,RoutedEventArgs e) { string[] Music = new string[] { ".mp3",".wma",".m4a",".aac" }; FileOpenPicker openPicker = new FileOpenPicker(); foreach (string extension in Music) { openPicker.FileTypeFilter.Add(extension); } StorageFile file = await openPicker.PickSingleFileAsync(); if (file != null) { await SaveThumbnail("MySongThumb.png",file); } } private async Task SaveThumbnail(string ThumbnailName,StorageFile file) { if (file != null) { using (StorageItemThumbnail thumbnail = await file.GetThumbnailAsync(ThumbnailMode.MusicView,100)) { if (thumbnail != null && thumbnail.Type == ThumbnailType.Image) { var destinationFile = await ApplicationData.Current.TemporaryFolder.CreateFileAsync(ThumbnailName,CreationCollisionOption.GenerateUniqueName); Windows.Storage.Streams.Buffer MyBuffer = new Windows.Storage.Streams.Buffer(Convert.ToUInt32(thumbnail.Size)); IBuffer iBuf = await thumbnail.ReadAsync(MyBuffer,MyBuffer.Capacity,InputStreamOptions.None); using (var strm = await destinationFile.OpenAsync(FileAccessMode.ReadWrite)) { await strm.WriteAsync(iBuf); } } } } } 更新1 private async Task<StorageFile> SaveThumbnail(StorageItemThumbnail objThumbnail) { if (objThumbnail != null && objThumbnail.Type == ThumbnailType.Image) { var picker = new FileSavePicker(); picker.SuggestedStartLocation = PickerLocationId.PicturesLibrary; picker.FileTypeChoices.Add("JPEG Image",new string[] { ".jpg" }); picker.FileTypeChoices.Add("PNG Image",new string[] { ".png" }); StorageFile destinationFile = await picker.PickSaveFileAsync(); if (destinationFile != null) { Windows.Storage.Streams.Buffer MyBuffer = new Windows.Storage.Streams.Buffer(Convert.ToUInt32(objThumbnail.Size)); IBuffer iBuf = await objThumbnail.ReadAsync(MyBuffer,InputStreamOptions.None); using (var strm = await destinationFile.OpenAsync(FileAccessMode.ReadWrite)) { await strm.WriteAsync(iBuf); } } return destinationFile; } else { return null; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- .net – 如何将上游构建的二进制文件传递给远程下游构建从属
- 在services.msc或windows服务控制台替代上过滤服务
- windows – powershell传递命令行参数
- 通过System.Windows.Automation访问Chrome中的Silverlight窗
- windows-phone-7 – wp7 – 带有大量文本的TextBlock – 巨
- windows-server-2008-r2 – windws server 2008 udp组播性能
- wpf – HighlightBrushKey设置在Windows 7中不起作用
- windows-server-2008-r2 – Windows防火墙在重启后几乎阻止
- windows – RegisterClass失败:类已经退出
- Flutter 在win7上面的搭建
推荐文章
站长推荐
- windows-server-2008 – 为什么我不能浏览我的D:
- windows – 从MAC地址获取IP. arp -a没有显示设备
- windows-server-2003 – 当实际大小为2.7TB时,Me
- 域名系统 – Windows 2012无法验证没有根区域的转
- 键盘语言更改在Windows 7上的PhpStorm中不起作用
- Windows – 为什么CreateProcess给出错误193(%1
- 为什么当我们获得实际的.dll实现时,我们还需要一
- windows – .cmd和.bat文件有什么区别?
- Windows命令无法运行报错:is not recognized as
- 通过Powershell或Batch将文件从Windows转换为UNI
热点阅读