WPF:将VisualBrush转换为绘图?

时间:2010-06-01 17:27:50

标签: wpf drawing visualbrush

我有一个VisualBrush,需要将这个VisualBrush作为绘图。任何人都知道如何做到这一点?谢谢你的提示!

2 个答案:

答案 0 :(得分:5)

这是XAML版本:

<GeometryDrawing Geometry="M0,0 L1,0 1,1 0,1 Z">
  <GeometryDrawing.Brush>
    <VisualBrush>
      ...
    </VisualBrush>
  </GeometryDrawing.Brush>
</GeometryDrawing>

答案 1 :(得分:2)

您的问题确实没有意义,因为VisualBrushDrawing无关(使用DrawingBrush会更有意义)。但是,您可以使用Drawing在其上绘制VisualBrush来创建public static Drawing GetDrawing(TileBrush brush) { DrawingVisual drawingVisual = new DrawingVisual(); DrawingContext drawingContext = drawingVisual.RenderOpen(); drawingContext.DrawRectangle(brush, new Pen(Brushes.Transparent, 0.0), brush.ViewPort); drawingContext.Close(); return drawingVisual.Drawing; } 。这样的事情应该有效:

TileBrush

(这适用于从VisualBrush继承的任何画笔,而不仅仅是{{1}})