如何在最小的 Ubuntu 上构建 Graphviz 以支持 Symbol 字体?

如何在最小的 Ubuntu 上构建 Graphviz 以支持 Symbol 字体?

我正在一个最小的 Ubuntu 实例中工作——具体来说,ubuntu:14.04Docker 镜像——我想要安装Graphviz支持 Adob​​e Symbol 字体(所有字母均为希腊字母的标准 PostScript 字体)。

使用此点文件greek.dot作为输入:

digraph {
  Rock     [fontname = "Symbol"]
  Scissors [fontname = "Symbol"]
  Paper    [fontname = "Symbol"]
  Rock -> Scissors -> Paper -> Rock
}

如果我apt-get install graphviz运行dot -Tpng -o greek.png greek.dot这个,我会得到:

在此处输入图片描述

如果我尝试从源代码构建:

apt-get install -y build-essential ghostscript libpng-dev libgd-dev fontconfig

wget -O - http://graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.38.0.tar.gz | tar zxv -C /tmp && \
    cd /tmp/graphviz-2.38.0 && \
    ./configure --enable-swig=no && make && make install && \
    cd / && \
    rm -rf /tmp/graphviz-2.38.0

现在运行dot得到:

在此处输入图片描述

如果我直接使用 HTML 实体来表示希腊字母:

digraph {
  Rock     [label = "Ροck"]
  Scissors [label = "Σcissors&invalid;"]
  Paper    [label = "Paπer"]
  Rock -> Scissors -> Paper -> Rock
}

(这样&invalid;我们就可以看到 GraphViz 知道π是一个合法实体。)

通过apt-get install graphviz,我得到了这个:

在此处输入图片描述

但是使用从源代码构建的 Graphviz,我得到:

在此处输入图片描述

这一页建议我可能需要安装 urw-fonts,但是那里给出的链接一直超时,而且我无法在其他地方找到此资源。

我到底需要安装哪些软件包才能使 Symbol 正常工作?

相关内容