概述
可移植文档格式(PDF)是一种文件格式,有助于以独立于应用程序软件,硬件和操作系统的方式显示数据。
每个PDF文件都包含固定布局平面文档的描述,包括显示它所需的文本,字体,图形和其他信息。
有几个库可用于通过程序创建和操作PDF文档,例如 -
Adobe PDF Library - 该库提供C ++,.NET和Java等语言的API,使用它可以编辑,查看打印和从PDF文档中提取文本。
Formatting Objects Processor - 由XSL格式化对象和输出独立格式化程序驱动的开源打印格式化程序。 主要输出目标是PDF。
iText - 该库提供Java,C#和其他.NET语言等语言的API,使用该库我们可以创建和操作PDF,RTF和HTML文档。
JasperReports - 这是一个Java报告工具,可以生成PDF文档的报告,包括Microsoft Excel,RTF,ODT,逗号分隔值和XML文件。
什么是PDFBox
Apache PDFBox是一个开源Java库,支持PDF文档的开发和转换。 使用此库,您可以开发用于创建,转换和操作PDF文档的Java程序。
除此之外,PDFBox还包括一个命令行实用程序,用于使用可用的Jar文件对PDF执行各种操作。
PDFBox的功能
以下是PDFBox的显着特征 -
Extract Text - 使用PDFBox,您可以从PDF文件中提取Unicode文本。
Split & Merge - 使用PDFBox,您可以将单个PDF文件分成多个文件,并将它们合并为一个文件。
Fill Forms - 使用PDFBox,您可以在文档中填写表单数据。
Print - 使用PDFBox,您可以使用标准Java打印API打印PDF文件。
Save as Image - 使用PDFBox,您可以将PDF保存为图像文件,如PNG或JPEG。
Create PDFs - 使用PDFBox,您可以通过创建Java程序创建新的PDF文件,还可以包含图像和字体。
Signing - 使用PDFBox,您可以将数字签名添加到PDF文件。
PDFBox的应用
以下是PDFBox的应用 -
Apache Nutch - Apache Nutch是一个开源的网络搜索软件。 它建立在Apache Lucene的基础上,添加了特定于Web的内容,例如爬虫,链接图数据库,HTML和其他文档格式的解析器等。
Apache Tika - Apache Tika是一个工具包,用于使用现有的解析器库从各种文档中检测和提取元数据和结构化文本内容。
PDFBox的组件
以下是PDFBox的四个主要组成部分 -
PDFBox - 这是PDFBox的主要部分。 它包含与内容提取和操作相关的类和接口。
FontBox - 它包含与font相关的类和接口,使用这些类我们可以修改PDF文档的文本字体。
XmpBox - 包含处理XMP元数据的类和接口。
Preflight - 此组件用于根据PDF/A-1b标准验证PDF文件。