`

使用PDFBox处理PDF文档

阅读更多

1、使用PDFBox处理PDF文档

PDF全称Portable Document Format,是Adobe公司开发的电子文件格式。这种文件格式与操作系统平台无关,可以在Windows、Unix或Mac OS等操作系统上通用。

PDF文件格式将文字、字型、格式、颜色及独立于设备和分辨率的图形图像等封装在一个文件中。如果要抽取其中的文本信息,需要根据它的文件格式来进行解析。幸好目前已经有不少工具能帮助我们做这些事情。

2、PDFBox的下载

最常见的一种PDF文本抽取工具就是PDFBox了,访问网址http://sourceforge.net/projects/pdfbox/,进入如图7-1所示的下载界面。读者可以在该网页下载其最新的版本。本书采用的是PDFBox-0.7.3版本。PDFBox是一个开源的Java PDF库,这个库允许你访问PDF文件的各项信息。在接下来的例子中,将演示如何使用PDFBox提供的API,从一个PDF文件中提取出文本信息。

3、在Eclipse中配置

以下是在Eclipse中创建工程,并建立解析PDF文件的工具类的过程。

(1)在Eclipse的workspace中创建一个普通的Java工程:ch7。

(2)把下载的PDFBox-0.7.3.zip解压。

(3)进入external目录下,可以看到,这里包括了PDFBox所有用到的外部包。复制下面的Jar包到工程ch7的lib目录下(如还未建立lib目录,则先创建一个)。

l bcmail-jdk14-132.jar

l bcprov-jdk14-132.jar

l checkstyle-all-4.2.jar

l FontBox-0.1.0-dev.jar

l lucene-core-2.0.0.jar

然后再从PDFBox的lib目录下,复制PDFBox-0.7.3.jar到工程的lib目录下。

(4)在工程上单击右键,在弹出的快捷菜单中选择“Build Path->Config Build Path->Add Jars”命令,把工程lib目录下面的包都加入工程的Build Path。

4、使用PDFBox解析PDF内容

在刚刚创建的Eclipse工程中,创建一个ch7.pdfbox包,并创建一个PdfboxTest类。该类包含一个getText方法,用于从一个PDF中获取文本信息,其代码如下。

import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileWriter;

import org.pdfbox.pdfparser.PDFParser;
import org.pdfbox.util.PDFTextStripper;


public class PdfParser {

   /**
   * @param args
   */
   // TODO 自动生成方法存根

       public   static   void   main(String[]   args)   throws   Exception{
            FileInputStream   fis   =   new   FileInputStream("F:\\task\\lerman-atem2001.pdf");
            BufferedWriter writer = new BufferedWriter(new FileWriter("F:\\task\\pdf_change.txt"));
            PDFParser   p   =   new   PDFParser(fis);
            p.parse();        
            PDFTextStripper   ts   =   new   PDFTextStripper();        
            String   s   =   ts.getText(p.getPDDocument());
            writer.write(s);
            System.out.println(s);
            fis.close();
            writer.close();
         
   }
}

分享到:
评论
1 楼 卢水发 2012-04-10  
443628678

相关推荐

    java使用pdfbox打印PDF

    在Java开发中,有时我们需要处理PDF文档,例如打印PDF文件。在这种情况下,原生的Java API可能不提供全面的支持,特别是在兼容各种打印机方面。为了解决这个问题,我们可以借助开源库如PDFBox。在这个场景中,我们...

    【Java】基于Pdfbox解析PDF文档中指定位置的文字和图片

    我们可以使用PDFBox开发可以创建,转换和操作PDF文档的Java程序。PDFBox的主要功能: Extract Text – 使用PDFBox,您可以从PDF文件中提取Unicode文本。 Split & Merge – 使用PDFBox,您可以将单个PDF文件分成多个...

    .Net c#使用PDFBox解析PDF文件

    在.Net中使用PDFBox需要引用: 1.PDFBox-0.7.3.dlll (8 MB) 2.IKVM.GNU.Classpath (7 MB) 3.IKVM.Runtime.dll (360 kB) 4.FontBox-0.1.0-dev.dll 使用方法: private static string parseUsingPDFBox(string ...

    pdfbox 提取 pdf文件中的图片

    PDFBox是一个开源的可以操作PDF文档的Java PDF类库。它可以创建一个新PDF文档,操作现有PDF文档并提取文档中的内容。 它具有以下特性: 1.将一个PDF文档转换输出为一个文本文件。 2.可以从文本文件创建一个PDF文档。 ...

    C#使用PDFBox读取PDF

    PDFBox是一个开源的Java库,主要用于处理PDF文档,但也可以通过.NET平台的Java interop技术在C#中使用。本篇文章将详细介绍如何在C#环境中利用PDFBox库来读取PDF文件的内容,并将其转换为TXT格式进行保存。 首先,...

    Java 解析 PDF, pdfbox读取PDF内容

    Java作为一款跨平台的编程语言,提供了多种库来处理PDF文档,其中之一就是PDFBox。本文将深入探讨如何使用PDFBox库在Java中解析PDF并读取其内容。 PDFBox是Apache软件基金会的一个开源项目,它为Java开发者提供了一...

    PDFBox pdf 转换为word文档

    1. **初始化PDFBox**: 加载PDF文档,这可以通过`PDDocument.load()`方法实现,传入PDF文件的路径。 2. **提取文本**: 使用`PDFTextStripper`类,调用`processDocument()`方法来提取PDF中的所有文本。 3. **保存文本*...

    轻松使用apache pdfbox将pdf文件生成图片.pdf

    Apache PDFBox是一个强大的Java库,专门用于处理PDF文档。它提供了丰富的API,允许开发者读取、创建、修改和渲染PDF文档。在这个特定的场景中,PDFBox被用来将PDF文件转换为图片,这对于报表开发或者需要将PDF内容...

    PDFBox PDF处理类库 v3.0.0 alpha2.zip

    总的来说,PDFBox是Java开发人员处理PDF文档的强大工具,其v3.0.0 alpha2版本为开发者提供了更多探索和测试的新特性。无论你是要进行简单的PDF读取还是复杂的PDF编辑,PDFBox都能满足你的需求,同时源码的开放性也...

    pdfbox 解析pdf里的图片和文字

    PDFBox是Apache软件基金会的一个开源项目,专门用于处理PDF文档的Java库。它提供了一系列强大的API,使得开发者能够轻松地读取、创建、修改和显示PDF文档中的内容。在这个场景中,我们将关注如何使用PDFBox解析PDF...

    pdfbox和pdfrenderer所需包

    **PDFBox** 是Apache软件基金会的一个开源项目,它提供了对PDF文件的强大支持,包括读取、创建、编辑和转换PDF文档。PDFBox-2.0.11.jar是这个库的二进制版本,包含了处理PDF所需的所有类和方法。使用PDFBox,你可以...

    使用pdfbox将pdf转图片 jar包

    PDFBox是Apache软件基金会的一个开源项目,专门用于处理PDF文档。这个工具库提供了一系列API,使得开发者能够方便地读取、创建、修改PDF文件。在本案例中,我们关注的是如何利用PDFBox将PDF文档转换为图片。这个过程...

    pdfbox读取pdf文档转为高清图片的例子

    PDFBox是Apache软件基金会开发的一个开源Java库,用于处理PDF文档。这个库提供了丰富的API,可以用来读取、创建、编辑PDF文档。在本例中,我们将关注如何使用PDFBox将PDF文档的内容转换为高清图片。 首先,我们需要...

    C# 使用PdfBox进行合并pdf

    `C#`是一种广泛使用的编程语言,而`PdfBox`则是一个强大的Java库,用于处理PDF文档。尽管`PdfBox`是用Java编写的,但通过使用Java的.NET版本(如 IKVM 或 Jni4Net),可以在C#项目中调用它的功能。本篇将详细介绍...

    pdfbox java解析pdf文档jar包+源代码+帮助文档+example

    6. **PDF元数据处理**:你可以使用PDFBox读取或修改PDF文档的元数据,如Title、Author、Subject等,这有助于管理和组织PDF文档。 7. **安全与权限管理**:PDFBox允许设置用户访问权限,例如禁止复制、打印或编辑...

    pdfbox,生成pdf文件的缩略图

    PDFBox是Apache软件基金会开发的一个开源Java库,主要用于处理PDF文档。这个库提供了广泛的API,可以用来创建、编辑和读取PDF文档。在本场景中,我们关注的是PDFBox的一个特定功能:生成PDF文件的缩略图。这有助于在...

    基于pdfbox操作pdf文件的测试

    在“基于pdfbox操作pdf文件的测试”项目中,我们将深入探讨如何使用PDFBox进行PDF文件的操作。 首先,要使用PDFBox,你需要在你的项目中引入Apache PDFBox的依赖。如果你使用的是Maven,可以在pom.xml文件中添加...

    java用poi转ppt为图片和用pdfbox转pdf为图片的demo

    另一方面,Apache PDFBox是另一个强大的Java库,专用于处理PDF文档。"java用pdfbox转pdf为图片"的过程与POI类似,但涉及到的是PDF文档。PDFBox提供了丰富的API来读取和操作PDF文件。 1. 引入PDFBox库:在项目中引入...

    pdfbox 提取 pdf 中 文字和图片 并 可转 html

    pdfbox 提取 pdf 中 文字和图片 并 可转 html 分2个文件,一个专门提取文本,内容可转为html,另一个文件专门用来提取图片,大家可自行整合为一个文件。使用pdfbox最新提取图片的方法。

    使用PDFBox提取PDF中文本信息

    PDFBox是Apache软件基金会的一个开源项目,主要用于处理PDF文档,包括读取、写入、编辑以及提取PDF中的信息。在C#环境下,虽然PDFBox原生是Java库,但通过 IKVM.NET 这样的工具可以将Java库转换为.NET Framework兼容...

Global site tag (gtag.js) - Google Analytics