Class PDDocumentCatalog

java.lang.Object
org.apache.pdfbox.pdmodel.PDDocumentCatalog
All Implemented Interfaces:
COSObjectable

public class PDDocumentCatalog extends Object implements COSObjectable
This class represents the acroform of a PDF document.
Version:
$Revision: 1.21 $
Author:
Ben Litchfield
  • Field Details

    • PAGE_MODE_USE_NONE

      public static final String PAGE_MODE_USE_NONE
      Page mode where neither the outline nor the thumbnails are displayed.
      See Also:
    • PAGE_MODE_USE_OUTLINES

      public static final String PAGE_MODE_USE_OUTLINES
      Show bookmarks when pdf is opened.
      See Also:
    • PAGE_MODE_USE_THUMBS

      public static final String PAGE_MODE_USE_THUMBS
      Show thumbnails when pdf is opened.
      See Also:
    • PAGE_MODE_FULL_SCREEN

      public static final String PAGE_MODE_FULL_SCREEN
      Full screen mode with no menu bar, window controls.
      See Also:
    • PAGE_MODE_USE_OPTIONAL_CONTENT

      public static final String PAGE_MODE_USE_OPTIONAL_CONTENT
      Optional content group panel is visible when opened.
      See Also:
    • PAGE_MODE_USE_ATTACHMENTS

      public static final String PAGE_MODE_USE_ATTACHMENTS
      Attachments panel is visible.
      See Also:
    • PAGE_LAYOUT_SINGLE_PAGE

      public static final String PAGE_LAYOUT_SINGLE_PAGE
      Display one page at a time.
      See Also:
    • PAGE_LAYOUT_ONE_COLUMN

      public static final String PAGE_LAYOUT_ONE_COLUMN
      Display the pages in one column.
      See Also:
    • 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.
      See Also:
    • 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.
      See Also:
    • 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
      See Also:
    • 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
      See Also:
  • 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

    • 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.
    • getCOSDictionary

      public COSDictionary getCOSDictionary()
      Convert this standard java object to a COS object.
      Returns:
      The cos object that matches this Java object.
    • 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.
    • setAcroForm

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

      public PDPageNode getPages()
      This will get the root node for the pages.
      Returns:
      The parent page node.
    • 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.
    • 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.
    • setViewerPreferences

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

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

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

      public List getThreads()
      Get the list threads for this pdf document.
      Returns:
      A list of PDThread objects.
    • 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.
    • 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.
    • setMetadata

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

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

      public PDDestinationOrAction getOpenAction() throws IOException
      Get the Document Open Action for this object.
      Returns:
      The action to perform when the document is opened.
      Throws:
      IOException - If there is an error creating the destination or action.
    • getActions

      Returns:
      The Additional Actions for this Document
    • setActions

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

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

      Returns:
      The named destinations dictionary for this document or null if none exists.
    • setNames

      public void setNames(PDDocumentNameDictionary names)
      Set the names dictionary for the document.
      Parameters:
      names - The names dictionary that is associated with this 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.
    • setMarkInfo

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

      public List<PDOutputIntent> getOutputIntent()
      Get the list of OutputIntents defined in the document.
      Returns:
      The list of PDOutputIntent
    • addOutputIntent

      public void addOutputIntent(PDOutputIntent outputIntent)
      Add an OutputIntent to the list. If there is not OutputIntent, the list is created and the first element added.
      Parameters:
      outputIntent - the OutputIntent to add.
    • setOutputIntents

      public void setOutputIntents(List<PDOutputIntent> outputIntents)
      Replace the list of OutputIntents of the document.
      Parameters:
      outputIntents - the list of OutputIntents, if the list is empty all OutputIntents are removed.
    • getPageMode

      public String getPageMode()
      Set the page display mode, see the PAGE_MODE_XXX constants.
      Returns:
      A string representing the page mode.
    • 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.
    • getPageLayout

      public String getPageLayout()
      Set the page layout, see the PAGE_LAYOUT_XXX constants.
      Returns:
      A string representing the page layout.
    • 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.
    • getURI

      public PDURIDictionary getURI()
      Document level information in the URI.
      Returns:
      Document level URI.
    • setURI

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

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

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

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

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

      public String getVersion()
      Returns the PDF specification version this document conforms to.
      Returns:
      The PDF version.
    • setVersion

      public void setVersion(String version)
      Sets the PDF specification version this document conforms to.
      Parameters:
      version - the PDF version (ex. "1.4")
    • getPageLabels

      public PDPageLabels getPageLabels() throws IOException
      Returns the page labels descriptor of the document.
      Returns:
      the page labels descriptor of the document.
      Throws:
      IOException - If there is a problem retrieving the page labels.
    • setPageLabels

      public void setPageLabels(PDPageLabels labels)
      Set the page label descriptor for the document.
      Parameters:
      labels - the new page label descriptor to set.
    • getOCProperties

      public PDOptionalContentProperties getOCProperties()
      Get the optional content properties dictionary associated with this document.
      Returns:
      the optional properties dictionary or null if it is not present
      Since:
      PDF 1.5
    • setOCProperties

      public void setOCProperties(PDOptionalContentProperties ocProperties)
      Set the optional content properties dictionary.
      Parameters:
      ocProperties - the optional properties dictionary
      Since:
      PDF 1.5