2011-10-18 32 views
0

中的樣式將XML轉換爲PDF我有以下問題:我有一個帶有XSL樣式表的XML文件,即當我在Web瀏覽器中加載它時,將此XML文件呈現爲HTML中的整潔表格。現在我需要在Web瀏覽器中製作一個完全類似於XSL風格的XML的PDF,而無需爲每個文件製作自定義的FO。一切都必須用Java完成。使用XSL

回答

0

XSL-FO確實聽起來像你所需要的。但是,如果這不是一種選擇,首先明確地對Java中的XML進行XSLT轉換,然後使用一些額外的庫將生成的HTML(到那時爲String/byte數組/ DOM /任何你想要的)轉換爲PDF,招。有一些庫支持HTML到PDF,例如iText。 Java中的XSLT轉換非常簡單。那裏涉及的代碼很少。

+0

謝謝你的回答。不幸的是,我需要一個解決方案,不需要將XML轉換爲HTML的中間步驟。 – DoktorNo

+0

如果你打算在Java中這樣做,爲什麼不能有一箇中間步驟?無論如何,你需要某種轉換。使用XSLT,XSL-FO或某些HTML到PDF轉換器肯定比編寫將解析事件直接轉換爲PDF結構的代碼更可取?可能有些東西可以直接將XML轉換爲PDF,但我不知道任何這樣的工具/庫,所以您的猜測與我的一樣好。希望有人有好的建議。 –

3

我需要做的是在尋找一模一樣的Web瀏覽器,XSL樣式的XML

重新考慮這一要求的PDF文件。諸如PDF之類的分頁媒體和諸如HTML之類的非分頁媒體可能只看起來「足夠接近」,但從來沒有「完全相似」。如果您將HTML顯示在具有不同屏幕尺寸的設備上,這一點就更加明顯。

如果您稍微放鬆上述要求,您可能會同意XSL-FO是最佳選擇。您絕對不需要爲每個文件編寫「自定義FO」:只需編寫一次XSLT,然後即時使用它將您的XML轉換爲XSL-FO,然後使用渲染引擎將XSL-FO處理爲PDF。簡單。

+0

http://xmlgraphics.apache.org/fop/ – JustinKSU