[英]Draw XAML shapes to DrawingContext?
我有一些由WPF形狀基元組成的常見符號(例如Rectangle,Line,Path等)。 這些符號當前作為用戶控件存儲在xaml文件中。 例如:
<Canvas x:Name="Symbol" Width="100" Height="100">
<Rectangle x:Name="Rectangle" Width="100" Height="100" Stretch="Fill">
<Rectangle.Fill>
<SolidColorBrush Color="Aqua"></SolidColorBrush>
</Rectangle.Fill>
</Rectangle>
</Canvas>
上面是一個簡單的示例,但是我的大多數符號更加復雜,由許多不同的部分組成。 因此,我希望使用這些用戶控件來存儲符號並使它們易於操作。
我在Canvas的OnRender方法中做了很多繪圖,並希望在我的繪圖中包含一些這些復合符號。 是否可以將它們轉換為格式以將其繪制到DrawingContext? 我知道有一個名為DrawingContext.DrawImage的方法,但這需要使用ImageSource作為輸入。
任何想法將不勝感激。
謝謝,艾倫
如果將畫布變成圖像源,則可以使用drawimage:
VisualBrush vb = new VisualBrush(canvas);
GeometryDrawing gd = new GeometryDrawing(vb, new Pen(Brushes.Transparent, 0), new RectangleGeometry(new Rect(0, 0, width, height)));
img = new DrawingImage(gd);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.