首页 > 其他分享 >WPF保存控件到图片

WPF保存控件到图片

时间:2022-11-28 17:46:29浏览次数:29  
标签:控件 保存 element var new WPF dpi size

/// <summary>
/// 保存控件到图片
/// </summary>
/// <param name="element">控件对象</param>
/// <param name="fileName">文件名</param>
/// <param name="dpi">DPI</param>
public static void SaveControlToPng(FrameworkElement element, string fileName, int dpi = 96)
{
    var size = new System.Windows.Size(element.ActualWidth, element.ActualHeight);
    element.Measure(size);
    element.Arrange(new Rect(new System.Windows.Point(0, 0), size));

    var bitmap = new RenderTargetBitmap(
        (int) size.Width, //width
        (int) size.Height, //height
        dpi, //dpi x
        dpi, //dpi y
        PixelFormats.Pbgra32 // pixelformat
    );
    bitmap.Render(element);

    var encoder = new PngBitmapEncoder();
    encoder.Frames.Add(BitmapFrame.Create(bitmap));

    using (var stream = File.Create(fileName))
    {
        encoder.Save(stream);
    }
}

 

标签:控件,保存,element,var,new,WPF,dpi,size
From: https://www.cnblogs.com/xhubobo/p/16932813.html

相关文章

  • C#清空控件的值
    ///清除容器里面某些控件的值///</summary>///<paramname="parContainer">容器类控件</param>publicvoidClearCntrValue(Contr......
  • wpf binding例子 优化
    1、binding源为非控件,而是C#类/实例窗体(V)代码,<Windowx:Class="WpfBindingApp1.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x......
  • wpf binding例子
    1、binding源为非控件,而是C#类/实例窗体(V)代码,<Windowx:Class="WpfBindingApp1.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation......
  • 目前主流的几款文件上传控件,以及优缺点
    ​ WebUploader是由BaiduWebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH为辅的现代文件上传组件。在现代的浏览器里面能充分发挥HTML5的优势,同时又不摒弃主流IE浏览器......
  • SAP UI5 SmartTable 控件的使用介绍试读版
    本文来自笔者SAP开发技术交流知识星球内一位朋友的提问:smartfilterbar有个输入框CostElement绑定了cds实现valuehelp请问其对应的suggestion功能是通过cds的注解实现......
  • UE4 FColor数据保存成图片
    1、TArray<FColor>或是FColor*可通过ImageWrapper直接保存成图片1voidURenderCineCameraLibrary::SaveColorToFile(FColor*SourceColor,uint32Width,uint32Heigh......
  • 如何保存/同步多架构容器 Docker 镜像
    前言随着容器、芯片技术的进一步发展,以及绿色、节能、信创等方面的要求,多CPU架构的场景越来越常见。典型的应用场景包括:信创:x86服务器+鲲鹏ARM等信创服务器;个人......
  • 如何保存/同步多架构容器 Docker 镜像
    前言随着容器、芯片技术的进一步发展,以及绿色、节能、信创等方面的要求,多CPU架构的场景越来越常见。典型的应用场景包括:信创:x86服务器+鲲鹏ARM等信创服务器;个人......
  • WPF中实现MVVM
    MVVM(Model-View-ViewModel):Model指的是后台传递的数据,View指的是所看到的页面。ViewModel是mvvm模式的核心,它是连接view和model的桥梁。它有两个方向:一是将模型转化成视......
  • 基于.NET三维控件的个性化管道软件开发
    1简介管道广泛用于化工、工厂、建筑、市政等方面,关系到国计民生。虽然管道设计软件种类繁多,有的也非常强大(然而也非常昂贵),但也并不能完全满足个性化需要。如何快速开发......