【UWP】截图

完整代码如下:

string desiredName =DateTime.Now.Ticks+".jpg";

            StorageFolder applicationFolder = ApplicationData.Current.LocalFolder;

            StorageFolder folder = await applicationFolder.CreateFolderAsync("Pic", CreationCollisionOption.OpenIfExists);

            StorageFile saveFile = await folder.CreateFileAsync(desiredName, CreationCollisionOption.OpenIfExists);

            RenderTargetBitmap bitmap = new RenderTargetBitmap();

            await bitmap.RenderAsync(PicGrid);

            var pixelBuffer =await bitmap.GetPixelsAsync();

            using(var fileStream=await saveFile.OpenAsync(FileAccessMode.ReadWrite))

            {

                var encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.PngEncoderId, fileStream);

                encoder.SetPixelData(BitmapPixelFormat.Bgra8,

                    BitmapAlphaMode.Ignore,

                    (uint)bitmap.PixelWidth,

                    (uint) bitmap.PixelHeight,

                    DisplayInformation.GetForCurrentView().LogicalDpi,

                    DisplayInformation.GetForCurrentView().LogicalDpi,

                    pixelBuffer.ToArray());

                await encoder.FlushAsync();

            }

            await new MessageDialog("保存成功").ShowAsync();




链接:https://www.jianshu.com/p/939c8fd4d75b

posted on 2019-06-20 15:21  MILUMI  阅读(255)  评论(0编辑  收藏  举报

导航