zoukankan      html  css  js  c++  java
  • WPF RenderTargetBitmap保存UIElement内容为空问题

    对UIElement进行刷新

    Size tSize = new Size(tPenNode.Width, tPenNode.Height);
    tPenNode.Measure(tSize);
    tPenNode.Arrange(new Rect(new Point(0, 0), tSize));
    
    DrawingVisual tDrawingVisual = new DrawingVisual();
                using (DrawingContext context = tDrawingVisual.RenderOpen())
                {
                    VisualBrush tVisualBrush = new VisualBrush(tPenNode);
                    tVisualBrush.Stretch = Stretch.Fill;
                    context.DrawRectangle(tVisualBrush, null, new Rect(0, 0, 80, 80));
                    context.Close();
                }
    
                RenderTargetBitmap tRenderTargetBitmap = new RenderTargetBitmap(80,80, 96, 96, PixelFormats.Default);
                tRenderTargetBitmap.Render(tDrawingVisual);
    
                using (FileStream tFileStream = new FileStream("C:\\1.png",
                                            FileMode.Create, FileAccess.Write))
                {
    
                    PngBitmapEncoder tPngBitmapEncoder = new PngBitmapEncoder();
                    tPngBitmapEncoder.Interlace = PngInterlaceOption.On;
                    tPngBitmapEncoder.Frames.Add(BitmapFrame.Create(tRenderTargetBitmap));
                    tPngBitmapEncoder.Save(tFileStream);
                    tFileStream.Close();
                }
    

      

  • 相关阅读:
    小猪存钱罐
    SSL与HTTPS协议
    KVM之XFS磁盘扩容
    vue学习笔记(一)
    ant打包总结
    github上传代码总结
    java中map遍历的总结
    angularjs初学总结
    angularjs常用指令
    github上传代码总结
  • 原文地址:https://www.cnblogs.com/sunhappy0318/p/2657929.html
Copyright © 2011-2022 走看看