形成 iText 5 对比 iText 7
iText 5 是一个有机增长的库。许多开发者贡献了代码例如:一位开发人员使用 TextField
和 PdfFormField
等类提供了从头开始创建表单字段的代码。另一个开发人员使用 AcroField
类和一系列 setFieldProperty()
方法贡献了更改现有表单字段的代码。
在 iText 5 中,用于创建表单字段的类不能用于更改表单字段,反之亦然。两组类之间没有任何关系。这让很多用户感到困惑。例如:一些用户发现了 TextField
类,并假设他们可以使用该类来更改现有文本字段的属性。事实并非如此,他们需要使用 AcroFields
类代替。
所有这些都在 iText 7 中得到修复。我们创建了一组新的类,例如 PdfFormField
及其子类 PdfTextField
,可用于创建新字段,以及更新现有表单字段。
iText 7 表单字段方法可以链接以使你的代码更紧凑,并且它们比 iText 5 中的相应方法更直观。使表单功能更优雅是从头开始重写 iText 的关键原因之一。