java使用iText从pdf文档中检索所有标题
我尝试阅读pdf文档并提取pdf文档中的所有标题。 标题示例:
1标题
1.1标题示例1
1.2标题示例2
1.2.1标题示例3
为此,我使用iText。你知道我该如何检索标题吗? 多谢各位
PdfReader = new PdfReader((new FileInputStream(systemResource.getFile())));
PdfReaderContentParser parser = new PdfReaderContentParser(pdfReader);
for(int i = 1; i <= pdfReader.getNumberOfPages(); i++){
TextExtractionStrategy simpleTextExtractionStrategy = parser.processContent(i, new SimpleTextExtractionStrategy());
simpleTextExtractionStrategy.getResultantText();
}
# 1 楼答案
PDF标准中基本上有两个组可用
未标记:PDF文档仅包含供查看者呈现页面的说明
例如:
如果您的PDF文档已被标记,则可以轻松检索文档结构(以及标题)
如果PDF文档没有标记,则需要编写自己的自定义逻辑来识别文本块(原始数据被提供给
IEventListener
)。您需要将这些块合并成行(基于一些启发式)。然后你就可以识别页眉(使用“以数字开头”或“字体通常大于页面上的平均字体大小”等试探法)