首页 > 代码库 > WPF:保存窗口当前状态截图方法
WPF:保存窗口当前状态截图方法
在制作软件使用手册或者操作示范市,比较常用方式有截图和视频制作。如果软件内置当前状态的截图和操作视频的导出功能,则将极大简化这方面的工作。使用wpf编写的UI界面,截图的导出功能逻辑相对简单,通用的实现步骤如下:
1、构建窗体与相关实现逻辑;
2、构建窗体的封装容器,包含窗体视图、DrawingVisual字段和窗体大小字段;
private readonly DrawingVisual dv;private readonly TestView previewControl;private readonly Rect controlSize;private readonly RenderTargetBitmap renderTargetBitmap;
3、初始化dv的大小属性与窗体保持一致,并设置缩放比例:
this.dv = new DrawingVisual();Size size = new Size(Width, Height);if (scale > 1.0){ this.dv.Transform = new ScaleTransform(1.0 / scale, 1.0 / scale); size.Width *= scale; size.Height *= scale;}
this.controlSize = new Rect(size);
4、保存截图到RenderTargetBitmap对象中。
using (DrawingContext drawingContext = this.dv.RenderOpen()){ VisualBrush visualBrush = new VisualBrush(this.previewControl); drawingContext.DrawRectangle(visualBrush, null, this.controlSize);}
this.renderTargetBitmap.Clear();
this.renderTargetBitmap.Render(this.dv);
通过构建通用的窗体封装容器,即可在需要该功能的所有软件中集成截图导出功能了。
WPF:保存窗口当前状态截图方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。