iText是一个十分强大的用java操作pdf的类库,可以读取和写入pdf,以下是使用iText读取pdf目录结构的方法。
public class HelloWorldBookmarks {
public static void main ( String [] args ) throws Exception {
PdfReader reader = new PdfReader ( "test.pdf" ) ;
List list = SimpleBookmark.getBookmark ( reader ) ;
for ( Iterator i = list.iterator () ; i.hasNext () ; ) {
showBookmark (( Map ) i.next ()) ;
}
}
private static void showBookmark ( Map bookmark ) {
System.out.println ( bookmark.get ( "Title" )) ;
ArrayList kids = ( ArrayList ) bookmark.get ( "Kids" ) ;
if ( kids == null )
return ;
for ( Iterator i = kids.iterator () ; i.hasNext () ; ) {
showBookmark (( Map ) i.next ()) ;
}
}
}