我正在编写一个用 graphviz 生成树的 C++ 程序。我正在生成点文件,但我想直接在我的脚本中生成 png 文件,而不使用终端或 system(command)
。
boost 中是否有函数可以做到这一点? 会是这样的
write_png(Graph g, string filename)
最佳答案
嗯,不。 Boost 有:
- A facility用于读取 Graphviz (.dot) 文件,作为 Boost Graph Library 的一部分。
- GIL - Generic Image Library - 让您可以读写可移植网络图形 (.png) 文件。
但前者产生图形的结构,而后者需要光栅图像,而不是某种结构化表示。将 .dot 文件渲染成 vector 或光栅图像是 GraphViz 库的目的,您需要直接使用它。我会看看什么 the sources of the dot
utility做,并基本上将相关部分复制到您自己的源代码中。
关于c++ - boost 库中是否有直接生成 png 文件而不是点的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51336363/