在本教程中,我们将学习如何使用pdfHTML将HTML转换为PDF,pdfHTML是iText 7的一个附加组件。如果你不熟悉iText,请立即跳到第1章。如果您以前使用过iText,您可能还记得旧的HTML到PDF功能。如果是这种情况,您要么使用了过时的HTMLWorker类(iText 2),要么使用了旧的XML Worker插件(iText 5)。
HTMLWorker类在许多年前就被弃用了。HTMLWorker的目标是将小而简单的HTML片段转换为iText对象。它从未打算将完整的HTML页面转换为PDF,但这正是许多开发人员尝试使用它的方式。这导致了很多挫折,因为HTMLWorker不支持每个HTML标记,不解析CSS文件,等等。为了避免这种挫折感,HTMLWorker从iText的最新版本中删除。
2011年,iText Group发布了XML Worker,作为一种通用的XML到PDF工具,构建在iText 5之上。默认实现将HTML(数据)和CSS(样式)转换为PDF,将HTML标记(如<p>、<img>和<li>映射到iText 5对象(如段落、图像和列表项)。我们不知道有任何实现将XML Worker用于任何其他XML格式,但许多开发人员将XML Worker与jsoup结合使用作为HTML2PDF转换器。
然而,XML Worker不是URL2PDF工具。XML工作者希望创建可预测的HTML,其唯一目的是将HTML转换为PDF。常见的用例是创建发票。开发人员没有用Java或C语言编程发票的设计,而是选择创建一个定义文档结构的简单HTML模板,以及一些定义样式的CSS。然后,他们用数据填充HTML,并使用