java - 使用 iText 的 PdfTextExtractor 解析错误

标签 java itext

当我尝试阅读 PDF 文档的内容时遇到问题。我正在使用带有Java的iText 2.1.7,我需要分析PDF文档的内容:首先我使用PdfTextExtractorgetTextFromPage方法并且它工作正常,但只有当页面只是文本时,如果它包含图像,那么我用getTextFromPage得到的字符串是一组无意义的符号(可能是不同的字符编码?),并且我丢失了文档的内容整个页面。我尝试使用 iText 的最新版本并且工作正常,但如果我没有错的话,许可证不会完全免费(我正在为商业客户开发一个网络应用程序,该应用程序可以动态提供 PDF),所以我无法使用它。如果您有任何建议,我将不胜感激。

如果您需要它,这里是代码:

PdfReader pdf = new PdfReader(doc);  //doc is just a byte[]
int pageCount = pdf.getNumberOfPages();
for (int i = 1; i <= pageCount; i++) {
    PdfTextExtractor pdfTextExtractor = new PdfTextExtractor(pdf);
    String pageText = pdfTextExtractor.getTextFromPage(i);

提前致谢,问候。

最佳答案

我认为您的 PDF 有内嵌图像。我认为 iText 2.1.7 不会处理这个问题。 您可以找到有关许可证的信息here

关于java - 使用 iText 的 PdfTextExtractor 解析错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7354250/

相关文章:

java - 如何为java中的字符串数组变量添加双引号("")

java - Firebase依赖项没有显示?

java - iText - 避免最后一行不要将页面拆分到下一页上的表格

java - iText 7.0.2 目的地错误

java - 将空字符串转换为整数

java - List<Dog> 是 List<Animal> 的子类吗?为什么 Java 泛型不是隐式多态的?

JavaFX CSS 警告 : CSS Error parsing file : . ..:预期 LBRACE 在

java - 有谁知道如何在JAVA中使用iText创建两个并行表?

java - itext 7 html 到 pdf 带页面大小检测

c# - iTextSharp 签署在 MemoryStream 中创建的 PDF