【问题标题】:PDFBox not recognizing a linkPDFBox 无法识别链接
【发布时间】:2013-07-17 03:40:42
【问题描述】:

我正在使用 Apache PDFBox 扫描 PDF 以搜索指向某个文件的链接。

我有大约一千个 PDF 文件要扫描,并且大部分链接(事实上,就我现在所见,除了一个之外,所有链接都找到了)。

但是,PDFBox 会忽略 PDF 中的一个特定链接。如果我用 Foxit 打开 PDF 并检查链接的属性,它看起来与所有其他链接完全一样(确实被找到了)。

这是我用来遍历链接的代码:

    for( Object p : pages ) {
        PDPage page = (PDPage)p;

        List<?> annotations = page.getAnnotations();
        for( Object a : annotations ) {
            PDAnnotation annotation = (PDAnnotation)a;

            if( annotation instanceof PDAnnotationLink ) {
                PDAnnotationLink link = (PDAnnotationLink)annotation;

                /* Do stuff with the link */
            }
        }

    }

在受影响的 PDF 中,page.getAnnotations() 确实返回一个空列表。

除了我应该注意的注释之外,还有其他类型的链接吗?

【问题讨论】:

    标签: java pdf pdfbox


    【解决方案1】:

    我看了annot字典。它看起来像这样:

    <</A 1207 0 R/BS<</D[3.0]/S/D/Type/Border/W 0>>/Border[0 0 0[3.0]]/C[1.0 0.0 0.0]/H/I/Rect[56.4168 621.404 547.686 639.787]/Subtype/Link/Type/Annot>>
    

    我看不出有什么问题。页面中的 Annots 条目也正确引用了它。抱歉,我无法提供更多帮助。

    【讨论】:

    • 你去吧:rapidshare.com/files/3712084146/PROT1112.pdf,不过它是德语的。该链接应位于表格的第一个数据行中。
    • 我看了一下annot字典。它看起来像这样:>/Border[0 0 0[3.0]]/C[1.0 0.0 0.0 ]/H/I/Rect[56.4168 621.404 547.686 639.787]/Subtype/Link/Type/Annot>>我看不出有什么问题。页面中的 Annots 条目也正确引用了它。抱歉,我无法提供更多帮助。
    猜你喜欢
    • 2014-01-18
    • 2013-11-21
    • 1970-01-01
    • 2021-07-31
    • 1970-01-01
    • 1970-01-01
    • 2016-05-28
    • 2016-05-29
    • 1970-01-01
    相关资源
    最近更新 更多