org.pdfbox.pdmodel

Class PDDocumentCatalog

Implemented Interfaces:
COSObjectable

public class PDDocumentCatalog
extends java.lang.Object
implements COSObjectable

This class represents the acroform of a PDF document.
Version:
$Revision: 1.21 $
Author:
Ben Litchfield

Field Summary

static String
PAGE_LAYOUT_ONE_COLUMN
Display the pages in one column.
static String
PAGE_LAYOUT_SINGLE_PAGE
Display one page at a time.
static String
PAGE_LAYOUT_TWO_COLUMN_LEFT
Display the pages in two columns, with odd numbered pagse on the left.
static String
PAGE_LAYOUT_TWO_COLUMN_RIGHT
Display the pages in two columns, with odd numbered pagse on the right.
static String
PAGE_LAYOUT_TWO_PAGE_LEFT
Display the pages two at a time, with odd-numbered pages on the left.
static String
PAGE_LAYOUT_TWO_PAGE_RIGHT
Display the pages two at a time, with odd-numbered pages on the right.
static String
PAGE_MODE_FULL_SCREEN
Full screen mode with no menu bar, window controls.
static String
PAGE_MODE_USE_ATTACHMENTS
Attachments panel is visible.
static String
PAGE_MODE_USE_NONE
Page mode where neither the outline nor the thumbnails are displayed.
static String
PAGE_MODE_USE_OPTIONAL_CONTENT
Optional content group panel is visible when opened.
static String
PAGE_MODE_USE_OUTLINES
Show bookmarks when pdf is opened.
static String
PAGE_MODE_USE_THUMBS
Show thumbnails when pdf is opened.

Constructor Summary

PDDocumentCatalog(PDDocument doc)
Constructor.
PDDocumentCatalog(PDDocument doc, COSDictionary rootDictionary)
Constructor.

Method Summary

PDAcroForm
getAcroForm()
This will get the documents acroform.
PDDocumentCatalogAdditionalActions
getActions()
List
getAllPages()
The PDF document contains a hierarchical structure of PDPageNode and PDPages, which is mostly just a way to store this information.
COSDictionary
getCOSDictionary()
Convert this standard java object to a COS object.
COSBase
getCOSObject()
Convert this standard java object to a COS object.
PDDocumentOutline
getDocumentOutline()
Get the outline associated with this document or null if it does not exist.
String
getLanguage()
The language for the document.
PDMarkInfo
getMarkInfo()
Get info about doc's usage of tagged features.
PDMetadata
getMetadata()
Get the metadata that is part of the document catalog.
PDDocumentNameDictionary
getNames()
PDDestinationOrAction
getOpenAction()
Get the Document Open Action for this object.
String
getPageLayout()
Set the page layout, see the PAGE_LAYOUT_XXX constants.
String
getPageMode()
Set the page display mode, see the PAGE_MODE_XXX constants.
PDPageNode
getPages()
This will get the root node for the pages.
PDStructureTreeRoot
getStructureTreeRoot()
Get the document's structure tree root.
List
getThreads()
Get the list threads for this pdf document.
PDActionURI
getURI()
Document level information in the URI.
PDViewerPreferences
getViewerPreferences()
Get the viewer preferences associated with this document or null if they do not exist.
void
setAcroForm(PDAcroForm acro)
Set the acro form for this catalog.
void
setActions(PDDocumentCatalogAdditionalActions actions)
Set the additional actions for the document.
void
setDocumentOutline(PDDocumentOutline outlines)
Set the document outlines.
void
setLanguage(String language)
Set the Language for the document.
void
setMarkInfo(PDMarkInfo markInfo)
Set information about the doc's usage of tagged features.
void
setMetadata(PDMetadata meta)
Set the metadata for this object.
void
setNames(PDDocumentNameDictionary names)
Set the names dictionary for the document.
void
setOpenAction(PDDestinationOrAction action)
Set the Document Open Action for this object.
void
setPageLayout(String layout)
Set the page layout.
void
setPageMode(String mode)
Set the page mode.
void
setStructureTreeRoot(PDStructureTreeRoot treeRoot)
Set the document's structure tree root.
void
setThreads(List threads)
Set the list of threads for this pdf document.
void
setURI(PDActionURI uri)
Set the document level uri.
void
setViewerPreferences(PDViewerPreferences prefs)
Set the viewer preferences.

Field Details

PAGE_LAYOUT_ONE_COLUMN

public static final String PAGE_LAYOUT_ONE_COLUMN
Display the pages in one column.

PAGE_LAYOUT_SINGLE_PAGE

public static final String PAGE_LAYOUT_SINGLE_PAGE
Display one page at a time.

PAGE_LAYOUT_TWO_COLUMN_LEFT

public static final String PAGE_LAYOUT_TWO_COLUMN_LEFT
Display the pages in two columns, with odd numbered pagse on the left.

PAGE_LAYOUT_TWO_COLUMN_RIGHT

public static final String PAGE_LAYOUT_TWO_COLUMN_RIGHT
Display the pages in two columns, with odd numbered pagse on the right.

PAGE_LAYOUT_TWO_PAGE_LEFT

public static final String PAGE_LAYOUT_TWO_PAGE_LEFT
Display the pages two at a time, with odd-numbered pages on the left.
Since:
PDF Version 1.5

PAGE_LAYOUT_TWO_PAGE_RIGHT

public static final String PAGE_LAYOUT_TWO_PAGE_RIGHT
Display the pages two at a time, with odd-numbered pages on the right.
Since:
PDF Version 1.5

PAGE_MODE_FULL_SCREEN

public static final String PAGE_MODE_FULL_SCREEN
Full screen mode with no menu bar, window controls.

PAGE_MODE_USE_ATTACHMENTS

public static final String PAGE_MODE_USE_ATTACHMENTS
Attachments panel is visible.

PAGE_MODE_USE_NONE

public static final String PAGE_MODE_USE_NONE
Page mode where neither the outline nor the thumbnails are displayed.

PAGE_MODE_USE_OPTIONAL_CONTENT

public static final String PAGE_MODE_USE_OPTIONAL_CONTENT
Optional content group panel is visible when opened.

PAGE_MODE_USE_OUTLINES

public static final String PAGE_MODE_USE_OUTLINES
Show bookmarks when pdf is opened.

PAGE_MODE_USE_THUMBS

public static final String PAGE_MODE_USE_THUMBS
Show thumbnails when pdf is opened.

Constructor Details

PDDocumentCatalog

public PDDocumentCatalog(PDDocument doc)
Constructor.
Parameters:
doc - The document that this catalog is part of.

PDDocumentCatalog

public PDDocumentCatalog(PDDocument doc,
                         COSDictionary rootDictionary)
Constructor.
Parameters:
doc - The document that this catalog is part of.
rootDictionary - The root dictionary that this object wraps.

Method Details

getAcroForm

public PDAcroForm getAcroForm()
This will get the documents acroform. This will return null if no acroform is part of the document.
Returns:
The documents acroform.

getActions

public PDDocumentCatalogAdditionalActions getActions()
Returns:
The Additional Actions for this Document

getAllPages

public List getAllPages()
The PDF document contains a hierarchical structure of PDPageNode and PDPages, which is mostly just a way to store this information. This method will return a flat list of all PDPage objects in this document.
Returns:
A list of PDPage objects.

getCOSDictionary

public COSDictionary getCOSDictionary()
Convert this standard java object to a COS object.
Returns:
The cos object that matches this Java object.

getCOSObject

public COSBase getCOSObject()
Convert this standard java object to a COS object.
Specified by:
getCOSObject in interface COSObjectable
Returns:
The cos object that matches this Java object.

getDocumentOutline

public PDDocumentOutline getDocumentOutline()
Get the outline associated with this document or null if it does not exist.
Returns:
The document's outline.

getLanguage

public String getLanguage()
The language for the document.
Returns:
The language for the document.

getMarkInfo

public PDMarkInfo getMarkInfo()
Get info about doc's usage of tagged features. This will return null if there is no information.
Returns:
The new mark info.

getMetadata

public PDMetadata getMetadata()
Get the metadata that is part of the document catalog. This will return null if there is no meta data for this object.
Returns:
The metadata for this object.

getNames

public PDDocumentNameDictionary getNames()
Returns:
The names dictionary for this document or null if none exist.

getOpenAction

public PDDestinationOrAction getOpenAction()
            throws IOException
Get the Document Open Action for this object.
Returns:
The action to perform when the document is opened.

getPageLayout

public String getPageLayout()
Set the page layout, see the PAGE_LAYOUT_XXX constants.
Returns:
A string representing the page layout.

getPageMode

public String getPageMode()
Set the page display mode, see the PAGE_MODE_XXX constants.
Returns:
A string representing the page mode.

getPages

public PDPageNode getPages()
This will get the root node for the pages.
Returns:
The parent page node.

getStructureTreeRoot

public PDStructureTreeRoot getStructureTreeRoot()
Get the document's structure tree root.
Returns:
The document's structure tree root or null if none exists.

getThreads

public List getThreads()
Get the list threads for this pdf document.
Returns:
A list of PDThread objects.

getURI

public PDActionURI getURI()
Document level information in the URI.
Returns:
Document level URI.

getViewerPreferences

public PDViewerPreferences getViewerPreferences()
Get the viewer preferences associated with this document or null if they do not exist.
Returns:
The document's viewer preferences.

setAcroForm

public void setAcroForm(PDAcroForm acro)
Set the acro form for this catalog.
Parameters:
acro - The new acro form.

setActions

public void setActions(PDDocumentCatalogAdditionalActions actions)
Set the additional actions for the document.
Parameters:
actions - The actions that are associated with this document.

setDocumentOutline

public void setDocumentOutline(PDDocumentOutline outlines)
Set the document outlines.
Parameters:
outlines - The new document outlines.

setLanguage

public void setLanguage(String language)
Set the Language for the document.
Parameters:
language - The new document language.

setMarkInfo

public void setMarkInfo(PDMarkInfo markInfo)
Set information about the doc's usage of tagged features.
Parameters:
markInfo - The new MarkInfo data.

setMetadata

public void setMetadata(PDMetadata meta)
Set the metadata for this object. This can be null.
Parameters:
meta - The meta data for this object.

setNames

public void setNames(PDDocumentNameDictionary names)
Set the names dictionary for the document.
Parameters:
names - The names dictionary that is associated with this document.

setOpenAction

public void setOpenAction(PDDestinationOrAction action)
Set the Document Open Action for this object.
Parameters:
action - The action you want to perform.

setPageLayout

public void setPageLayout(String layout)
Set the page layout. See the PAGE_LAYOUT_XXX constants for valid values.
Parameters:
layout - The new page layout.

setPageMode

public void setPageMode(String mode)
Set the page mode. See the PAGE_MODE_XXX constants for valid values.
Parameters:
mode - The new page mode.

setStructureTreeRoot

public void setStructureTreeRoot(PDStructureTreeRoot treeRoot)
Set the document's structure tree root.
Parameters:
treeRoot - The new structure tree.

setThreads

public void setThreads(List threads)
Set the list of threads for this pdf document.
Parameters:
threads - The list of threads, or null to clear it.

setURI

public void setURI(PDActionURI uri)
Set the document level uri.
Parameters:
uri - The new document level uri.

setViewerPreferences

public void setViewerPreferences(PDViewerPreferences prefs)
Set the viewer preferences.
Parameters:
prefs - The new viewer preferences.