如何生成OpenOffice Draw文档?

时间:2010-10-18 17:36:22

标签: java coldfusion openoffice.org railo cfml

我想在OpenOffice Draw中创建一个流程图。

由于要显示许多步骤(以后可能会有所改变),但我可以提取数据,我想通过以下步骤自动创建:

  • 使用指定的页面设置创建新的ODG文档。
  • 插入具有指定属性的流程图形状。
  • 用箭头连接这些东西。
  • 理想情况下,将事物自动组织到合理的位置。

我不想花几个小时阅读一些“UNO”的东西 - 我只想要我可以根据需要调整的代码示例。

如果示例代码使用OO API,或者仅修改压缩模板中的XML文件,则不会感到困扰 - 只要它能让我轻松地完成上述操作。

我正在使用Railo(CFML)执行此操作,但我也可以使用Java,或者转换其他可读语言的代码段。

有任何建议如何解决这个问题?


更新
我已经开始使用XML路径 - 我保存了一个空文件和一个带有单个对象的文件,并比较了两个(视为拉链)以查看差异,然后重复几次不同的更改以帮助理解什么是继续。

我有一些非常基本的(和不完整的)代码可以创建形状并连接它们,可以在这里看到:http://gist.github.com/634306

这非常粗糙,但我可能想出一种方法来使用我现在所拥有的东西来生产我需要的东西 - 但我仍然希望有人可以指出我更好的方法 - 特别是我需要弄清楚一些适当定位形状的方法,这不会是微不足道的。

我为第四点创造了一个独特的问题:
How do I auto-layout boxes on a flowchart?

更新2:
从另一个问题,我发现GraphViz可以从数据中可视化图形 - 我从我的数据中创建了一个'有向图' - 所以我需要的是将output of GraphViz转换为某种东西的方法哪个OpenOffice Draw可以接受。很明显的想法会有SVG,但似乎OpenOffice hasn't implemented SVG properly,所以我需要提出另一个计划。

2 个答案:

答案 0 :(得分:1)

您可以尝试api.openoffice.org。让我知道这对您有何影响。

答案 1 :(得分:0)

您可以查看我的post有关如何创建OO电子表格的信息。示例是.NET,但应该可以轻松移植到Java。我之前没有这样做但我认为你可以用writer8替换draw8来访问OpenOffice Draw引擎而不是电子表格引擎。如果您已成功创建了一个电子表格,那么您可以查看有关如何添加形状和图形的API。