7

使用 graphviz 执行任何操作时,我收到“找不到/打开字体”错误。我一直在文件中将其缩小为尽可能简单的图表simplest.dot

digraph G {
  node1
}

运行时$ dot simplest.dot -Tpng -O,图形呈现为simplest.dot.png,但我总是收到此错误:Error: Could not find/open font,并且输出中使用的字体不是很漂亮。

根据 graphviz faq,当出现这个错误时,你可以告诉 graphviz 去哪里寻找字体。我一直在寻找我正在使用的系统上的字体,其中似乎有一些 TrueType 字体/usr/share/fonts,其中包括 Bitstream Vera 字体,它们似乎存在于/usr/share/fonts/bitstream-vera.

所以我尝试在点图中设置fontpath和,以帮助 graphviz 解决问题:fontname

digraph G {
  fontpath="/usr/share/fonts/bitstream-vera"
  fontname="Bitstream Vera Sans"
  node1
}

但我仍然得到完全相同的错误。我已经尝试了路径和字体名称的几种变体,但我似乎无法做到正确。我究竟做错了什么?

4

1 回答 1

4

这可能是一个黑暗的镜头,但在http://www.graphviz.org/doc/info/attrs.html#d:fontname它说如果你指定 fontname=schlbk,该工具将寻找一个名为 schlbk 的文件.ttf 或 schlbk.pfa 或 schlbk.pfb 在由 fontpath 属性指定的目录之一中。

所以,我可能会尝试

digraph G {
  fontpath="/usr/share/fonts/bitstream-vera"
  fontname="nameOfttfWITHOUTsuffix.ttf"
  node1
}
于 2011-01-25T14:28:46.570 回答