pdf文件中的可扩展列表

时间:2013-05-13 04:47:51

标签: java pdf pdf-generation report

我可以在pdf文件中创建可扩展列表吗?可扩展列表的格式为:

+Item1
+Item2
-Item3
   -Subitem3.1
   -Subitem3.2
+Item4
-Item5
   -Subitem5.1
   -Subitem5.2
   -Subitem5.3

另外我需要从Java创建pdf文件(我想使用iText,是另一个库更好/更容易吗?)。这可能吗。或者是一种其他标准格式(不是pdf或html)的报告,这是一种更简单的方法。

1 个答案:

答案 0 :(得分:1)

首先:我是iText的创建者,所以请原谅我没有指向其他解决方案; - )

现在提出您的问题:您要求在PDF文档中提供动态功能(在用户交互时打开/关闭的树结构)。

最明显的答案是:这是不可能的。在创建PDF时,请考虑纸张。您可以在最终用户接触纸张时打开/关闭的纸张上打印树状结构吗?不,你不能,因此你会问一些PDF中无法实现的东西。

不太明显的答案是:它取决于。我们在谈论什么类型的PDF?

如果您正在谈论交互式XFA表单,那么您可以实现您想要的目标。 XML Forms Architecture(XFA)是一种XML规范,可用于定义交互式表单。使用XFA时,PDF只不过是XML的容器。此XML在Adobe Reader中动态呈现。如何创建XFA表单?我只了解两个产品:Adobe LiveCycle Designer和Avoka ​​Smart Forms Designer。

如果你在谈论'常规PDF',那么一个选项是嵌入一个swf文件。在这种情况下,树结构将由Flash播放器呈现(这可能是一个缺点,因为这可能不适用于所有PDF查看器)。另一个缺点:树结构将被限制在固定页面上的固定矩形。

最后:您可以在书签面板中创建这样的结构。在PDF术语中,这些书签称为轮廓。显然,树结构不会是可打印内容的一部分。它将在PDF查看器的单独面板中显示。