形成 iText 5 對比 iText 7

iText 5 是一個有機增長的庫。許多開發者貢獻了程式碼例如:一位開發人員使用 TextFieldPdfFormField 等類提供了從頭開始建立表單欄位的程式碼。另一個開發人員使用 AcroField 類和一系列 setFieldProperty() 方法貢獻了更改現有表單欄位的程式碼。

在 iText 5 中,用於建立表單欄位的類不能用於更改表單欄位,反之亦然。兩組類之間沒有任何關係。這讓很多使用者感到困惑。例如:一些使用者發現了 TextField 類,並假設他們可以使用該類來更改現有文字欄位的屬性。事實並非如此,他們需要使用 AcroFields 類代替。

所有這些都在 iText 7 中得到修復。我們建立了一組新的類,例如 PdfFormField 及其子類 PdfTextField,可用於建立新欄位,以及更新現有表單欄位。

iText 7 表單欄位方法可以連結以使你的程式碼更緊湊,並且它們比 iText 5 中的相應方法更直觀。使表單功能更優雅是從頭開始重寫 iText 的關鍵原因之一。