如何在graphviz中使用SVG自定义节点形状?

pwn*_*all 14 svg graphviz

我正在尝试使用graphviz(dot命令行工具,更具体)来生成图形的SVG布局.我想使用我的Inkscape生成的SVG文件来定义节点形状,我按照graphviz教程中的说明操作.我正在输出SVG,所以理论上,通过将形状声明为<symbol>s并将<use>其添加到图表中,这应该很容易实现.这封电子邮件让我相信功能已经实现,我无法弄清楚如何使用它.

我尝试将节点的image属性指向自定义形状SVG文件.我也尝试将节点设置shapecustom并指向shapefile形状SVG.dot抱怨如果我输入无效的文件名,其插件图表示它可以读取SVG.我猜测我使用了错误的属性,或者我尝试过的SVG文件有问题.

无论它有什么价值,我确实已经viewBox设置了<svg>属性.

pwn*_*all 9

graphviz仅支持SVG输入,其中使用绝对单位(像素,英寸等)设置widthheight属性<svg>.Inkscape height="100%" width="100%" viewBox="0 0 width_in_pixels height_in_pixels"作为<svg>元素的属性输出.

我提交了一个错误报告,graphviz开发人员向我指出了image属性帮助,该属性描述了在自定义节点形状中使用SVG的要求.

  • 大部分链接都消失了!:-( 你能展示一下你的固定和工作代码的小例子吗?谢谢 (3认同)