java - 使用 Asprise 和 Java 对 PDF 进行 OCR

标签 java ocr

嘿,我是这项工作的新手,我在编译代码时遇到此错误:

     OCR ocr = new OCR(); 
     PDFReader reader = new PDFReader(new File("C:\\Users\\pc\\Downloads\\chk1.pdf")); 
     reader.open(); // open the file.  
     int pages = reader.getNumberOfPages(); 



     for(int i=0; i<pages; i++) { 
      BufferedImage image = reader.getPageAsImage(i); /////null pointer exception here
      System.out.println("OCR result:\n" + ocr.recognizeCharacters(image));  
     } 

      reader.close(); // finally, close the file. 

错误是:

    java.lang.NullPointerException
at org.pdfbox.util.operator.pagedrawer.Invoke.a(Unknown Source)
at com.asprise.util.pdf.as.a(Unknown Source)
at com.asprise.util.pdf.as.b(Unknown Source)
at com.asprise.util.pdf.as.a(Unknown Source)
at com.asprise.util.pdf.gV.a(Unknown Source)
at com.asprise.util.pdf.G.l(Unknown Source)
at com.asprise.util.pdf.PDFReader.getPageAsImage(Unknown Source)
at file.tracker.threads.PDFFilerConverter.gotoRead(PDFFilerConverter.java:94)
at file.tracker.threads.PDFFilerConverter.run(PDFFilerConverter.java:60)
at java.lang.Thread.run(Thread.java:744)

有人可以帮我摆脱它吗?

最佳答案

试试这个

for(int i=0; i<pages; i++) { 
     String txt =reader.extractTextFromPage(i);
     System.out.println(“Text result:\n” + txt);
}

关于java - 使用 Asprise 和 Java 对 PDF 进行 OCR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21986641/

相关文章:

java - 在 Hibernate Search 中建立索引时出错(在事务完成之前)

java - 将一串文本和数字更改为仅数字

android - 如何用opencv在白色背景上检测白纸

java - 类不会计算它应该计算的内容,也是 : sorting arrays of objects?

ios - 仅在我的 iOS 应用程序中将 tesseract 字符限制为 a-z 和数字

python - 如何使用Python从PDF文件中提取图表/表格/图形?

safari - 如何设置网页表单以支持移动 Safari 中的 iOS 8 信用卡扫描?

java - 出现在同一帧上

java - 表单提交后重定向到页面上的同一选项卡 - Spring MVC

java - 如果列表为空,则 Hibernate 限制会导致错误