我正在使用 Eclipse 和 iText 读取 PDF 文档以提取所有文本并将该文本写入文件中。
我正在使用这段代码从 pdf 中提取文本。
PdfReader reader = new PdfReader("pdftotext.pdf");
PdfTextExtractor extractor = new PdfTextExtractor(reader);
int pagenumber = reader.getNumberOfPages();
for(int i = 1; i<= pagenumber; i++) {
System.out.println("============PAGE NUMBER " + i + "=============" );
String line = extractor.getTextFromPage(i);
System.out.println(line);
}
但是我在这一行遇到错误 -> PdfTextExtractor extractor = new PdfTextExtractor(reader);
我应该能够使用 PdfTextExtractor,但它给了我一个控制台错误:
The constructor PdfTextExtractor(PdfReader) is undefined
最佳答案
PdfTextExtractor class没有公共(public)构造函数。但是,您可以这样编写代码:
PdfReader reader = new PdfReader(SRC);
for (int i = 1; i <= reader.getNumberOfPages(); i++) {
System.out.println("============PAGE NUMBER " + i + "=============" );
System.out.println(PdfTextExtractor.getTextFromPage(reader, i));
}
为了完整起见,由于 iText 5 已被弃用(上面的代码),这里是完全相同的代码,但对于 iText 7(同一类 - PdfTextExtractor ):
PdfDocument document = new PdfDocument(new PdfReader(SRC));
for (int i = 1; i <= document.getNumberOfPages(); i++) {
System.out.println("============PAGE NUMBER " + i + "=============" );
System.out.println(PdfTextExtractor.getTextFromPage(document.getPage(i)));
}
关于java - Itext PdfTextExtractor 构造函数未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58523271/