许多应用程序都要求动态生成 PDF 文档。这些应用程序涵盖从生成客户对帐单并通过电子邮件交付的银行到购买特定的图书章节并以 PDF 格式接收这些图书章节的读者。这个列表不胜枚举。在本文中,我们将使用 iText Java 库生成 PDF 文档。我们将向您演示一个样例应用程序,以便您可自行完成它并能更好地理解它。
熟悉 iText V5.3.0 版
iText 是一个可从 http://itextpdf.com/ 免费获取的 Java 库(请参见 参考资料)。iText 库非常强大,且支持生成 HTML、RTF 和 XML 文档,还支持生成 PDF 文档。您可以选择各种各样的字体来用于文档中。另外,iText 的结构允许您使用相同代码生成上面提及的任何类型的文档。
iText 库包含使用各种字体生成 PDF 文本、在 PDF 文档中生成表格、向页面中添加水印等的类。iText 还提供了其他许多特性。在一篇文章中无法演示所有这些特性。我们将介绍生成 PDF 所需的基本知识。有关更多详细信息,请参阅供应商提供的文档(参见 参考资料)。
我们将使用 Eclipse 开发我们的样例应用程序。作为一个开源 IDE,Eclipse 可免费获取且非常强大。您可立即下载 Eclipse(参见 参考资料)。
iText API:详细了解
com.itextpdf.text.Document 是用于生成 PDF 文档的主要类。这是第一个需要实例化的类。创建文档之后,您需要一个编写器来向其中写入信息。com.itextpdf.text.pdf.PdfWriter 是一个 PDF 编写器。下面提供了其他一些常用的类:
com.itextpdf.text.Paragraph:此类表示一个缩进的段落。
com.itextpdf.text.Chapter:此类表示 PDF 文档中的一章。使用 Paragraph 作为标题、int 作为章节编号来创建该类。
com.itextpdf.text.Font:此类包含一种字体的所有规范,比如字体集、字号、样式和颜色。各种字体都在此类中声明为静态常量。
com.itextpdf.text.List:此类表示一个列表,反过来,该列表又包含许多 ListItems。
com.itextpdf.text.pdf.PDFPTable:这是一个表格,可放在一个绝对位置上,也可作为类 Table 添加到文档中。
com.itextpdf.