0

我无法在 rrdgraph 中使用标准字体以外的其他字体。

我不知道这可能与这个 Alpine 没有 GUI(所有 X 东西)的事实有关。

我发现这个问题https://bugs.alpinelinux.org/issues/1475处理丢失的字体,但安装这些包没有帮助。

这是我的 Dockerfile

FROM alpine:3.3

RUN apk --update add \
      build-base python-dev \
      ca-certificates python \
      py-pip \
      py-jinja2 \
      py-dateutil \
      py-tz \
      py-requests \
      py-pillow \
      py-rrd && \
    pip install --upgrade arrow \
                          websocket-client \
                          XlsxWriter && \
    apk del build-base python-dev && \
    rm -rf /var/cache/apk/* && \
    echo "iot"

CMD ["/bin/sh"]

我后来手动添加了这些字体包docker exec -it iot /bin/sh

我试过像

  # rrd_graph_fmt += ["--font", "LEGEND:8:'/home/user/data/fonts/Roboto-Regulars.ttf'"]
  # rrd_graph_fmt += ["--font", "LEGEND:8:font-sony-misc"]

但它只是不起作用。我什至不确定如何使用环境变量全局更改字体。我尝试过(使用 env vars 在网上的一些东西),但它没有用。

我真的很喜欢使用 ttf 字体,但如果有必要,我会使用包中的字体。

我正在使用 py-rrd 包中的 rrdtool 库。

有没有人知道如何让它工作?

4

1 回答 1

1

RRDtool 使用 fontconfig 来访问字体...查看您的系统上可以使用的字体

fc-list

要配置 fontconfig 应该在哪里查找字体,您可能需要编辑/etc/fonts/...~/.fonts.conf.d在您的主目录中。

要刷新字体列表,请运行

fc-cache

请注意,字体支持独立于 X11。

于 2016-06-22T21:42:23.927 回答