itext7获取当前页面的文本框
时间: 2024-03-28 16:42:26 浏览: 178
在 iText 7 中,可以使用 `LocationTextExtractionStrategy` 类来获取当前页面的文本框。该类是 `ITextExtractionStrategy` 接口的实现类之一,它可以提取页面上的文本,并将其按位置分组。以下是一个示例代码片段,演示如何使用 `LocationTextExtractionStrategy` 类来获取当前页面的文本框:
```
PdfDocument pdfDoc = new PdfDocument(new PdfReader("input.pdf"));
PdfPage page = pdfDoc.getPage(1);
LocationTextExtractionStrategy strategy = new LocationTextExtractionStrategy();
PdfCanvasProcessor parser = new PdfCanvasProcessor(strategy);
parser.processPageContent(page);
List<TextChunk> textChunks = strategy.getResultantTextChunks();
for (TextChunk chunk : textChunks) {
Rectangle rect = chunk.getBoundingRectange();
System.out.println("Text: " + chunk.getText());
System.out.println("Position: " + rect.getLeft() + ", " + rect.getBottom());
System.out.println("Size: " + rect.getWidth() + " x " + rect.getHeight());
}
pdfDoc.close();
```
在上面的代码中,我们首先打开一个 PDF 文档,然后获取第一页。接着,我们创建一个 `LocationTextExtractionStrategy` 实例,并将其传递给 `PdfCanvasProcessor` 对象。最后,我们使用 `getResultantTextChunks()` 方法获取当前页面的所有文本块,并遍历它们。对于每个文本块,我们打印出其文本内容、位置和大小。
阅读全文