1

我需要一种渲染树状结构的方法,类似于流程图。

令人惊讶的是,我找不到(或者我做错了)合适的工具。

首先,我查看了 SVG。但是我找不到在不使用 ECMAScript 的情况下在文本周围绘制边界框的方法:我尝试做一个简单的事情,绘制两个由框包围并由一条线链接的文本,以边为中心(类似于 OO,其中 O是一个带有文本的框)。当您使用 ECMAScript 时,您会严重限制可用于 SVG 渲染的工具(例如,您无法使用 ImageMagick 将此类 SVG 正确转换为 png 或 pdf)。

其次,我尝试了Asymptote,但是当您开始使用文本操作时它会很重(您需要安装和配置LaTeX系统)。

我正在寻找一种工具,您可以在其中:

  1. 以编程方式访问字体属性:基线、上升、下降、高度
  2. 计算字符串(或边界框)的高度/宽度
  3. 基本的矢量图形功能,如画线、形状等。

我不认为这是一件难事。例如,所有此类功能都存在于 Java2D 中。当然,我可以将它用作最后的手段并获得光栅图形,但可能有什么方便使用的东西吗?

4

2 回答 2

1

你看过 GraphViz ( http://www.graphviz.org/ ) 吗?它并不真正符合您的要求,因为您放弃了一些控制,而是让该工具根据图形或树的说明性描述进行布局和渲染,但我发现它是生成树状的最简单方法输出。

于 2010-07-20T14:47:29.363 回答
0

不确定它是否应该免费?

这是一个具有广泛 API 的商业解决方案 http://www-01.ibm.com/software/integration/visualization/java/

于 2010-07-20T14:25:23.517 回答