如何在带标签的pdf中获取标签的页码

How to get page number of a tag in tagged pdf

我想获取带标签的 PDF 中标签的页码。

我试过下面的代码,但我不确定。

for(Object coDic: structElement.getKids()) {
   int page=((PDStructureElement) coDic).getCOSObject().getCOSDictionary(COSName.PG).getInt(COSName.STRUCT_PARENTS);
}

structParents 是完全不同的东西(参见 PDF specification)。这样做:

PDPage page = new PDPage(((PDStructureElement) coDic).getCOSObject().getCOSDictionary(COSName.PG));
int pageNum = doc.getPages().indexOf(page);

或更好:

PDPage page = ((PDStructureElement) coDic).getPage();
int pageNum = doc.getPages().indexOf(page);

(省略空检查和 class 检查)