如何将VisualElement渲染为基于矢量的图像?

时间:2012-04-15 09:00:29

标签: wpf graphics charts wpf-controls rendering

我正在制作图表控件, 我需要实现图表快照功能,以任何请求的大小捕获高质量的曲线和文本中的矢量图像。

任何人都可以建议我解决此问题的任何解决方案或指针。

深深体会到任何帮助。

2 个答案:

答案 0 :(得分:1)

如果必须以矢量格式保存图像,则可以使用跟踪。 Potrace是一个开源位图到矢量跟踪库(但认为位图跟踪不完善)。还要考虑到wpf与矢量图形标记语言XAML密切相关,因此您可能需要convert raster graphics to XAML(尽管Charles Petzold you can't embed a bitmap in a XAML file

如果需要绘制矢量图像,可以使用为形状元素提供基类的Shape元素,例如Ellipse,Polygon和Rectangle;并将形状添加为Panel子项。如果你正在处理成千上万的形状,我建议使用DrawingVisual类,一个可用于在屏幕上渲染矢量图形的可视对象及其RenderOpen方法。

要缩放,您必须使用转换,尤其是ScaleTrasnform并将转换应用于面板或形状。

希望得到这个帮助。

答案 1 :(得分:0)

你可以看看XamlToy,但我还没有尝试过。 http://xamltoys.codeplex.com/