我想在我的 WPF 应用程序中使用 GraphViz 而不安装 Graphviz。
AT&T(或其他人)是否分发这样的 DLL?
谢谢,凯末尔
您可以将点工具从源代码编译为 DLL。这就是我前一段时间所做的。我将 QuickGraph 与 GraphViz 一起使用,并使用稍微修改过的控件版本来渲染图形,您可以从这里获得http://www.codeproject.com/KB/WPF/Dot2Wpf.aspx
只需使用“GraphViz XAML 渲染器”@ http://www.sixpairs.com/graphviz/graphviz.aspx
特征:
问候,
西珀
显然 ImageMagick 可以读取 graphviz DOT 格式:http ://www.imagemagick.org/script/formats.php
也许您可以使用此包装器http://imagemagick.codeplex.com/从 .NET 调用 ImageMagick并让它读取 DOT 并以 PNG 或其他格式输出?我从来没有尝试过,而且据我所知,ImageMagick 可能最终会产生命令行程序!
(很久以前,我通过生成具有良好结果的 graphviz 可执行文件,从 ASP 经典中使用了 graphviz。)
尝试 graphviz 库 .NET 包装器http://code.google.com/p/graphviznet/。
它以托管对象的形式接受图形的描述,通过 graphviz 布局引擎运行并取回数据。
如果您不想安装完整的graphviz,您可以只复制所需的一组dll,请参阅演示项目中的readme.txt,项目还包含一个WPF控件来显示图形。
许可
GraphViz 在 Common Public License 下获得许可(请参阅CPL 常见问题解答)
同样来自 GraphViz 网站:
有关通用公共许可证的更多信息,请参阅常见问题解答。如果您对许可证的含义有任何疑虑,尤其是涉及金钱的情况,您应该联系知识产权律师。
使用 GraphViz 作为 DLL
GraphViz 是一个可执行程序而不是 DLL - 要在您的应用程序中使用它,您需要使用正确的命令行参数生成可执行文件并获取结果输出。
其他使用 GraphViz 的方法
有一个可用的 COM 组件可以解析 DOT 语言并呈现它: WinGraphViz,但我从未使用过它,也无法保证它的工作情况。
另外:如果您在 WPF 中进行图形工作,我强烈建议您使用 QuickGraph 来实际管理图形 - 它还将输出到与 GraphViz 兼容的文本文件。
看看这个相当新的面向对象的 .NET Graphviz 包装器:https ://github.com/Rubjerg/Graphviz.NetWrapper
由于它通过对其附带的 Graphviz 库进行外部函数调用来工作,因此您无需安装任何东西。