0

特定のファイルへのリンクを検索するために、Apache PDFBox を使用して PDF をスキャンしています。

スキャンする PDF が約 1,000 ありますが、ほとんどのリンク (実際、現在確認できる限り 1 つを除くすべて) が見つかりました。

ただし、PDFBox が無視する特定のリンクが PDF 内に 1 つあります。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()、空のリストが返されます。

注釈以外に知っておくべきリンクの種類はありますか?

4

1 に答える 1

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 エントリからも正しく参照されます。申し訳ありませんが、これ以上お役に立てません。

于 2011-08-24T13:41:10.780 に答える