2013-05-13 114 views
0

我可以在pdf文件中創建可擴展列表。擴展列表會的形式爲:pdf文件中的可擴展列表

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

我也需要創建從Java PDF文件(我想利用iText的,是另一個庫更好/更容易嗎?)。這可能嗎。或者是一些其他標準格式的報告(不是pdf或html)是一種更簡單的方法。

回答

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查看器的單獨面板中顯示。