我正在使用GraphViz生成图形,其节点是数学公式,类似于带有指数的多项式。我使用UTF-8上标来渲染它们,原因有几个(首先使用GraphViz对<SUP>...</SUP>
的支持会产生一个丑陋的结果,指数太大,甚至与节点的帧碰撞,第二个因为我也使用相同的UTF-8渲染来显示文本结果。)
令我最大的失望,我发现,至少在Mac OS X(El Capitan)上,大多数字体对上标提供的支持非常差:通常123不会像0456789那样呈现。
例如,在Courier和日内瓦,他们是粗体:
在Helvetica中,它们是粗体而且太高而且没有对齐:
摩纳哥并不好:
和其他大多数众所周知的字体(Times等)都缺少这些字形,因此我猜想渲染引擎会寻找其他字体的替代品。以下是Times New Roman中此GraphViz文件digraph {"a⁰¹²³⁴⁵⁶⁷⁸⁹"}
:
由于这是数学,我真的不急于使用Courier或其他固定宽度字体。由于我的工作在多个环境中的几台计算机上使用,我希望尽可能提供便携式解决方案。
所以我的问题是:对于SVG渲染,人们建议使用哪种字体与GraphViz,以便我可以优雅地渲染包含指数的数学公式?