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

标签 java pdf pdfbox

我想获取带标签的 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);

(省略空检查和类检查)

关于java - 如何获取带标签的pdf中标签的页码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60371287/

相关文章:

java - 打开新消息框或其他对话框时如何使背景屏幕变暗

java - SwingUtilities.invokeLater 做什么?

c# - iText 7 试用许可证

java - 性能 iText 与 PdfBox

java - PDFBox 中的多边形注释 PDAnnotation

java - Velocity框架资源未找到异常

java - 将 Ignite 与 mysql 一起用作第 3 方持久存储时,如何确保缓存键和对象 id 相同

php - 推荐?对于我们特定的 HTML -> PDF 项目

javascript - 如何使用 javascript + HTML5 了解 PDF 版本

java - 使用页码作为输入从现有 pdf 中剪辑并创建新 pdf - pdfbox