Advertisement
Guest User

Untitled

a guest
Jul 28th, 2016
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.28 KB | None | 0 0
  1. BitmapEncoder pngEncoder = new PngBitmapEncoder();
  2. var finalBitmap = new RenderTargetBitmap(4000, 4000, 120, 120, PixelFormats.Pbgra32);
  3. DrawingVisual dv = new DrawingVisual();
  4.  
  5. using (DrawingContext dc = dv.RenderOpen())
  6. {
  7. this.DrawTextBoxes(this.StackPanel1, dc, 0, 0);
  8. Console.WriteLine("height: " + this.TextBox1.RenderSize.Height);
  9. Console.WriteLine(this.TextBox1.FontSize.ToString());
  10. this.TextBox1.FontSize += 1;
  11. this.TextBox1.Text = "changed";
  12. Console.WriteLine(this.TextBox1.FontSize.ToString());
  13. Console.WriteLine("height: " + this.TextBox1.RenderSize.Height);
  14. this.DrawTextBoxes(this.StackPanel1, dc, 500, 0);
  15. }
  16.  
  17. finalBitmap.Render(dv);
  18. pngEncoder.Frames.Add(BitmapFrame.Create(finalBitmap));
  19.  
  20. using (var file = File.OpenWrite("TestImage.png"))
  21. {
  22. pngEncoder.Save(file);
  23. }
  24.  
  25. public void DrawTextBoxes(UIElement element, DrawingContext dc, double x, double y)
  26. {
  27. var target = new RenderTargetBitmap((int)(element.RenderSize.Width/0.8), (int)(element.RenderSize.Height/0.8), 120, 120, PixelFormats.Pbgra32);
  28. target.Render(element);
  29. var frame = BitmapFrame.Create(target);
  30. dc.DrawImage(frame, new Rect(x, y, frame.Width, frame.Height));
  31. }
  32.  
  33. height: 20,31
  34. 15
  35. 16
  36. height: 20,31
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement