首先這樣的:我的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查看器的單獨面板中顯示。