一、介绍
Apache PDFbox是一个开源的、基于Java的、支持PDF文档生成的工具库,它可以用于创建新的PDF文档,修改现有的PDF文档,还可以从PDF文档中提取所需的内容。Apache PDFBox还包含了数个命令行工具。Apache PDFbox于前不久发布了最新的1.8.2版。
二、特征
Apache PDFBox主要有以下特征:1)文本提取:从PDF文档中提取文本。
2)合并&分割:可以把多个PDF文档合并成单个,也可以把单个PDF分拆成多个PDF文档。
3)表单填充:可以从PDF表单中提取数据,或者是填充PDF表单。
4)PDF/A验证:验证PDF文档是否满足PDF/A ISO标准。
5)PDF打印:把PDF文档输出到打印机——利用了Java的打印API。
6)PDF转换:可以把PDF文档转换成映像文件。
7)PDF创建:可以从头创建新的PDF文档。
8)集成Lucene搜索引擎:Lucene搜索引擎与PDF索引相集成。
三、下载地址
地址:1)pdfbox-1.8.2.jar
地址:http://archive.apache.org/dist/pdfbox/1.8.2/pdfbox-1.8.2.jar
说明:满足一般的PDF操作需求。
2)pdfbox-app-1.8.2.jar
http://archive.apache.org/dist/pdfbox/1.8.2/pdfbox-app-1.8.2.jar
说明:PDFbox的多个命令行的工具包。
3)fontbox-1.8.2.jar
地址:http://archive.apache.org/dist/pdfbox/1.8.2/fontbox-1.8.2.jar
说明:PDF使用的字库包
package com.fk.extract.pdf;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import org.apache.pdfbox.pdfparser.PDFParser;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.util.PDFTextStripper;
public class ExtractTextFromPDF {
public void readPDF(String filename){
File file = new File(filename);
FileInputStream in = null;
try {
in = new FileInputStream(filename);
PDFParser parser = new PDFParser(in);
parser.parse();
PDDocument pdDocument = parser.getPDDocument();
PDFTextStripper stripper = new PDFTextStripper();
String result = stripper.getText(pdDocument);
System.out.println("PDF文件" + file.getAbsolutePath()+"内容如下:");
System.out.println(result);
} catch (IOException e) {
//e.printStackTrace();
}
}
public static void main(String[] args) {
new ExtractTextFromPDF().readPDF("src/match.pdf");
}
}