PDFBox - 概述
可移植文件格式 (PDF) 是一種檔案格式,它有助於以獨立於應用程式軟體、硬體和作業系統的方式呈現資料。
每個PDF檔案都包含對固定佈局平面文件的描述,包括文字、字型、圖形以及顯示它所需的其他資訊。
有幾個庫可用於透過程式建立和操作PDF文件,例如:
Adobe PDF 庫 - 此庫提供C++、.NET和Java等語言的API,使用它我們可以編輯、檢視、列印和從PDF文件中提取文字。
格式化物件處理器 - 由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的顯著功能:
提取文字 - 使用PDFBox,您可以從PDF檔案中提取Unicode文字。
分割和合並 - 使用PDFBox,您可以將單個PDF檔案分成多個檔案,並將它們合併回單個檔案。
填寫表單 - 使用PDFBox,您可以填寫文件中的表單資料。
列印 - 使用PDFBox,您可以使用標準Java列印API列印PDF檔案。
另存為圖片 - 使用PDFBox,您可以將PDF儲存為圖片檔案,例如PNG或JPEG。
建立PDF - 使用PDFBox,您可以透過建立Java程式來建立新的PDF檔案,還可以包含影像和字型。
簽名 - 使用PDFBox,您可以向PDF檔案新增數字簽名。
PDFBox的應用
以下是PDFBox的應用:
Apache Nutch - Apache Nutch是一款開源的網路搜尋軟體。它基於Apache Lucene構建,增加了特定於網路的功能,例如爬蟲、連結圖資料庫、HTML和其他文件格式的解析器等。
Apache Tika - Apache Tika是一個工具包,用於使用現有的解析器庫檢測和提取各種文件的元資料和結構化文字內容。
PDFBox的元件
以下是PDFBox的四個主要元件:
PDFBox - 這是PDFBox的主要部分。它包含與內容提取和操作相關的類和介面。
FontBox - 它包含與字型相關的類和介面,使用這些類我們可以修改PDF文件文字的字型。
XmpBox - 它包含處理XMP元資料的類和介面。
Preflight - 此元件用於根據PDF/A-1b標準驗證PDF檔案。