2017-06-15 70 views
-1

我有一套使用Word設計的表單。我需要填寫這些表單並將其保存爲PDF。所有這些都是用Java編程的。Java中的PDF表格

我探討了以下可能性:

  • 字空 - > PDF AcroForm - >填寫與PDFBox的

  • 字編程填充 - >轉換爲PDF

  • 字空 - > XHTML - >使用飛碟填充並保存爲PDF

  • Word empty - > Converted in special XM L用Apache的FOP

到現在爲止,我遇到以下困難與第一種可能性:

  • 很難建立動態表

  • PDFBox的無法管理RTL文本正確

這些解決方案有什麼好的經驗嗎?

+0

您可以創建一個空的可填寫PDF表單?如果是這樣,您可以使用iText來填寫PDF表單並將其扁平化以創建該表單的填充副本。我很久以前用過iText,它很好.. – anacron

+0

我看了一下iText - 它不是免費的,我不確定最新的免費版本2.1.7是如何運作的。我提到的問題之一就是動態表格。在PDF中沒有表格的概念,因此我在Word中創建它,但是我必須在表格中預先分配很多行,並且其中大部分通常都是空的。 –

+0

哦,它不是免費的嗎?我在7-8年前免費時使用了它,並且它做得很好。所以,如果你仍然可以得到它的副本,你可以繼續下去。但是,如果遇到任何錯誤,他們可能不會再爲這些舊版本提供任何支持。 – anacron

回答

2

幾年前,我爲我的一位客戶做了類似的實現。我使用開放式辦公室來創建模板並使用iText生成PDF。看看它是否有幫助。

步驟:

創建模板:

  1. 公開賽在開放式辦公新文檔,並創建一個新文檔。轉到「查看」並進行「窗體設計」模式
  2. 輸入代表模板靜態部分的文本。
  3. 打開「表單設計」模式後,相應的工具欄將被添加,如上面屏幕截圖中突出顯示的那樣。現在單擊「文本框」並在文檔中插入一個文本框。雙擊文本框並在其中插入所需的輸入。
  4. 一旦創建了模板文件,保存和輸出文檔爲PDF和將這個文件作爲模板的PDF創建

填補了模板利用iText:

下步驟是讀取模板並填充模板以動態生成PDF。 iText提供了一個PdfReader來讀取PDF文件和PdfStamper來修改或添加內容到PDF文檔。由於模板是一個PDF文件,PdfReader將讀取模板,並且PdfStamper將使用實時數據動態填充字段。以下是步驟

1.使用iText PdfReader閱讀PDF模板。該模板可以放在文件系統的任何位置。但是在現實生活中的項目場景中,它應該放置在項目文件夾中。

  1. 使用PdfReader和ByteArrayOutputStream作爲參數創建一個PdfStamper。
  2. 使用PdfStamper對象的實例填充模板字段。 setField()方法將鍵和值作爲參數。 「鍵」應該是在模板創建期間給出的文本框的「名稱」。請確保「密鑰」與「名稱」字段相同。否則,該字段將不會填充。
  3. 填充必填字段後,使用PdfReader對象關閉PdfStamper。

參考:http://itext-pdfcreation-template.blogspot.in/