怎么用pdfBox从pdf文件中提取images
2个回答
展开全部
1、我们需要PDFBox的Jar包,所以我们先在百度搜索一下“PDFBox”。点击“Apache PDFBox | A Java PDF Library”这个链接。
2、进入Apache PDFBox介绍页面,我们可以看到PDFBox可以实现这么多操作,我们这里只介绍如何提取文本,也就是第一项“Extract Text-Extract Unicode text from PDF files.”
3、然后我们点击左侧导航中的“Downloads”(下载),我们进入下载页面。
此时我们希望下载两个Jar文件,一个是“pdfbox-app-1.8.10.jar”,另一个是“fontbox-1.8.10.jar”,你可以发现还有一个“pdfbox-1.8.10.jar”,为什么不下载它呢?上面那个名称中含有“app”的Jar,它是功能最完整的,所以下载它比较好。
4、将下载的这两个Jar文件加到程序的libraries中。说一下步骤,右击工程-->选择“Build Path”-->"Configure Build Path...",弹出窗口,选择左侧导航中的“Java Build Path”,再选择“libraries”选项卡,点击“Add External JARs”,再选择上刚刚下载的那两个Jar文件,点击“OK”即可。
5、接下来就是写程序,程序代码如图所示,输入源文件“a.pdf”,然后把源PDF中的所有文本都生成到了“aa.txt”目标文件中了。
6、程序源代码:
import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.OutputStreamWriter;import org.apache.pdfbox.pdfparser.PDFParser;import org.apache.pdfbox.pdmodel.PDDocument;import org.apache.pdfbox.util.PDFTextStripper;public class PdfExtracter { public PdfExtracter() { } public String GetTextFromPdf(String filename) throws Exception { String content = null; PDDocument pdfdocument = null; FileInputStream is = new FileInputStream(filename); PDFParser parser = new PDFParser(is); parser.parse(); pdfdocument = parser.getPDDocument(); PDFTextStripper stripper = new PDFTextStripper(); content = stripper.getText(pdfdocument); return content; } public static void main(String args[]) { PdfExtracter pf = new PdfExtracter(); try { String ts = pf.GetTextFromPdf("c:/a.pdf"); //System.out.println(ts); OutputStreamWriter osw = new OutputStreamWriter( new FileOutputStream("c:/aa.txt")); osw.write(ts); osw.flush(); osw.close(); } catch (Exception e) { e.printStackTrace(); } }}
2、进入Apache PDFBox介绍页面,我们可以看到PDFBox可以实现这么多操作,我们这里只介绍如何提取文本,也就是第一项“Extract Text-Extract Unicode text from PDF files.”
3、然后我们点击左侧导航中的“Downloads”(下载),我们进入下载页面。
此时我们希望下载两个Jar文件,一个是“pdfbox-app-1.8.10.jar”,另一个是“fontbox-1.8.10.jar”,你可以发现还有一个“pdfbox-1.8.10.jar”,为什么不下载它呢?上面那个名称中含有“app”的Jar,它是功能最完整的,所以下载它比较好。
4、将下载的这两个Jar文件加到程序的libraries中。说一下步骤,右击工程-->选择“Build Path”-->"Configure Build Path...",弹出窗口,选择左侧导航中的“Java Build Path”,再选择“libraries”选项卡,点击“Add External JARs”,再选择上刚刚下载的那两个Jar文件,点击“OK”即可。
5、接下来就是写程序,程序代码如图所示,输入源文件“a.pdf”,然后把源PDF中的所有文本都生成到了“aa.txt”目标文件中了。
6、程序源代码:
import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.OutputStreamWriter;import org.apache.pdfbox.pdfparser.PDFParser;import org.apache.pdfbox.pdmodel.PDDocument;import org.apache.pdfbox.util.PDFTextStripper;public class PdfExtracter { public PdfExtracter() { } public String GetTextFromPdf(String filename) throws Exception { String content = null; PDDocument pdfdocument = null; FileInputStream is = new FileInputStream(filename); PDFParser parser = new PDFParser(is); parser.parse(); pdfdocument = parser.getPDDocument(); PDFTextStripper stripper = new PDFTextStripper(); content = stripper.getText(pdfdocument); return content; } public static void main(String args[]) { PdfExtracter pf = new PdfExtracter(); try { String ts = pf.GetTextFromPdf("c:/a.pdf"); //System.out.println(ts); OutputStreamWriter osw = new OutputStreamWriter( new FileOutputStream("c:/aa.txt")); osw.write(ts); osw.flush(); osw.close(); } catch (Exception e) { e.printStackTrace(); } }}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |