Class PdfAction


public class PdfAction extends PdfDictionary
A PdfAction defines an action that can be triggered from a PDF file.
See Also:
  • Field Details

    • FIRSTPAGE

      public static final int FIRSTPAGE
      A named action to go to the first page.
      See Also:
    • PREVPAGE

      public static final int PREVPAGE
      A named action to go to the previous page.
      See Also:
    • NEXTPAGE

      public static final int NEXTPAGE
      A named action to go to the next page.
      See Also:
    • LASTPAGE

      public static final int LASTPAGE
      A named action to go to the last page.
      See Also:
    • PRINTDIALOG

      public static final int PRINTDIALOG
      A named action to open a print dialog.
      See Also:
    • SUBMIT_EXCLUDE

      public static final int SUBMIT_EXCLUDE
      a possible submitvalue
      See Also:
    • SUBMIT_INCLUDE_NO_VALUE_FIELDS

      public static final int SUBMIT_INCLUDE_NO_VALUE_FIELDS
      a possible submitvalue
      See Also:
    • SUBMIT_HTML_FORMAT

      public static final int SUBMIT_HTML_FORMAT
      a possible submitvalue
      See Also:
    • SUBMIT_HTML_GET

      public static final int SUBMIT_HTML_GET
      a possible submitvalue
      See Also:
    • SUBMIT_COORDINATES

      public static final int SUBMIT_COORDINATES
      a possible submitvalue
      See Also:
    • SUBMIT_XFDF

      public static final int SUBMIT_XFDF
      a possible submitvalue
      See Also:
    • SUBMIT_INCLUDE_APPEND_SAVES

      public static final int SUBMIT_INCLUDE_APPEND_SAVES
      a possible submitvalue
      See Also:
    • SUBMIT_INCLUDE_ANNOTATIONS

      public static final int SUBMIT_INCLUDE_ANNOTATIONS
      a possible submitvalue
      See Also:
    • SUBMIT_PDF

      public static final int SUBMIT_PDF
      a possible submitvalue
      See Also:
    • SUBMIT_CANONICAL_FORMAT

      public static final int SUBMIT_CANONICAL_FORMAT
      a possible submitvalue
      See Also:
    • SUBMIT_EXCL_NON_USER_ANNOTS

      public static final int SUBMIT_EXCL_NON_USER_ANNOTS
      a possible submitvalue
      See Also:
    • SUBMIT_EXCL_F_KEY

      public static final int SUBMIT_EXCL_F_KEY
      a possible submitvalue
      See Also:
    • SUBMIT_EMBED_FORM

      public static final int SUBMIT_EMBED_FORM
      a possible submitvalue
      See Also:
    • RESET_EXCLUDE

      public static final int RESET_EXCLUDE
      a possible submitvalue
      See Also:
  • Constructor Details

    • PdfAction

      public PdfAction()
      Create an empty action.
    • PdfAction

      public PdfAction(URL url)
      Constructs a new PdfAction of Subtype URI.
      Parameters:
      url - the Url to go to
    • PdfAction

      public PdfAction(URL url, boolean isMap)
      Construct a new PdfAction of Subtype URI that accepts the x and y coordinate of the position that was clicked.
      Parameters:
      url - the URL
      isMap - true if it is a map, false otherwise
    • PdfAction

      public PdfAction(String url)
      Constructs a new PdfAction of Subtype URI.
      Parameters:
      url - the url to go to
    • PdfAction

      public PdfAction(String url, boolean isMap)
      Construct a new PdfAction of Subtype URI that accepts the x and y coordinate of the position that was clicked.
      Parameters:
      url - the URL
      isMap - true if it is a map, false otherwise
    • PdfAction

      PdfAction(PdfIndirectReference destination)
      Constructs a new PdfAction of Subtype GoTo.
      Parameters:
      destination - the destination to go to
    • PdfAction

      public PdfAction(String filename, String name)
      Constructs a new PdfAction of Subtype GoToR.
      Parameters:
      filename - the file name to go to
      name - the named destination to go to
    • PdfAction

      public PdfAction(String filename, int page)
      Constructs a new PdfAction of Subtype GoToR.
      Parameters:
      filename - the file name to go to
      page - the page destination to go to
    • PdfAction

      public PdfAction(int named)
      Implements name actions. The action can be FIRSTPAGE, LASTPAGE, NEXTPAGE, PREVPAGE and PRINTDIALOG.
      Parameters:
      named - the named action
    • PdfAction

      public PdfAction(String application, String parameters, String operation, String defaultDir)
      Launches an application or a document.
      Parameters:
      application - the application to be launched or the document to be opened or printed.
      parameters - (Windows-specific) A parameter string to be passed to the application. It can be null.
      operation - (Windows-specific) the operation to perform: "open" - Open a document, "print" - Print a document. It can be null.
      defaultDir - (Windows-specific) the default directory in standard DOS syntax. It can be null.
  • Method Details

    • createLaunch

      public static PdfAction createLaunch(String application, String parameters, String operation, String defaultDir)
      Launches an application or a document.
      Parameters:
      application - the application to be launched or the document to be opened or printed.
      parameters - (Windows-specific) A parameter string to be passed to the application. It can be null.
      operation - (Windows-specific) the operation to perform: "open" - Open a document, "print" - Print a document. It can be null.
      defaultDir - (Windows-specific) the default directory in standard DOS syntax. It can be null.
      Returns:
      a Launch action
    • rendition

      public static PdfAction rendition(String file, PdfFileSpecification fs, String mimeType, PdfIndirectReference ref) throws IOException
      Creates a Rendition action
      Parameters:
      file - the name of the file
      fs - the PdfSpecification
      mimeType - the mime type
      ref - the PdfIndirectReference
      Returns:
      a Media Clip action
      Throws:
      IOException - thrown when an I/O operation fails
    • javaScript

      public static PdfAction javaScript(String code, PdfWriter writer, boolean unicode)
      Creates a JavaScript action. If the JavaScript is smaller than 50 characters it will be placed as a string, otherwise it will be placed as a compressed stream.
      Parameters:
      code - the JavaScript code
      writer - the writer for this action
      unicode - select JavaScript unicode. Note that the internal Acrobat JavaScript engine does not support unicode, so this may or may not work for you
      Returns:
      the JavaScript action
    • javaScript

      public static PdfAction javaScript(String code, PdfWriter writer)
      Creates a JavaScript action. If the JavaScript is smaller than 50 characters it will be place as a string, otherwise it will be placed as a compressed stream.
      Parameters:
      code - the JavaScript code
      writer - the writer for this action
      Returns:
      the JavaScript action
    • createHide

      static PdfAction createHide(PdfObject obj, boolean hide)
      A Hide action hides or shows an object.
      Parameters:
      obj - object to hide or show
      hide - true is hide, false is show
      Returns:
      a Hide Action
    • createHide

      public static PdfAction createHide(PdfAnnotation annot, boolean hide)
      A Hide action hides or shows an annotation.
      Parameters:
      annot - the annotation to hide or show
      hide - true is hide, false is show
      Returns:
      A Hide Action
    • createHide

      public static PdfAction createHide(String name, boolean hide)
      A Hide action hides or shows an annotation.
      Parameters:
      name - the name of the object to hide or show
      hide - true is hide, false is show
      Returns:
      A Hide Action
    • buildArray

      static PdfArray buildArray(Object[] names)
    • createHide

      public static PdfAction createHide(Object[] names, boolean hide)
      A Hide action hides or shows objects.
      Parameters:
      names - Object array containing the Objects to hide or show
      hide - true is hide, false is show
      Returns:
      A Hide Action
    • createSubmitForm

      public static PdfAction createSubmitForm(String file, Object[] names, int flags)
      Creates a submit form.
      Parameters:
      file - the URI to submit the form to
      names - the objects to submit
      flags - submit properties
      Returns:
      A PdfAction
    • createResetForm

      public static PdfAction createResetForm(Object[] names, int flags)
      Creates a resetform.
      Parameters:
      names - the objects to reset
      flags - submit properties
      Returns:
      A PdfAction
    • createImportData

      public static PdfAction createImportData(String file)
      Creates an Import field.
      Parameters:
      file - the name of the file
      Returns:
      A PdfAction
    • gotoLocalPage

      public static PdfAction gotoLocalPage(int page, PdfDestination dest, PdfWriter writer)
      Creates a GoTo action to an internal page.
      Parameters:
      page - the page to go. First page is 1
      dest - the destination for the page
      writer - the writer for this action
      Returns:
      a GoTo action
    • gotoLocalPage

      public static PdfAction gotoLocalPage(String dest, boolean isName)
      Creates a GoTo action to a named destination.
      Parameters:
      dest - the named destination
      isName - if true sets the destination as a name, if false sets it as a String
      Returns:
      a GoTo action
    • gotoRemotePage

      public static PdfAction gotoRemotePage(String filename, String dest, boolean isName, boolean newWindow)
      Creates a GoToR action to a named destination.
      Parameters:
      filename - the file name to go to
      dest - the destination name
      isName - if true sets the destination as a name, if false sets it as a String
      newWindow - open the document in a new window if true, if false the current document is replaced by the new document.
      Returns:
      a GoToR action
    • gotoEmbedded

      public static PdfAction gotoEmbedded(String filename, PdfTargetDictionary target, String dest, boolean isName, boolean newWindow)
      Creates a GoToE action to an embedded file.
      Parameters:
      filename - the root document of the target (null if the target is in the same document)
      target - a path to the target document of this action
      dest - the named destination
      isName - if true sets the destination as a name, if false sets it as a String
      newWindow - if true, the doc should be opened in a new window
      Returns:
      a GoToE action
    • gotoEmbedded

      public static PdfAction gotoEmbedded(String filename, PdfTargetDictionary target, PdfObject dest, boolean newWindow)
      Creates a GoToE action to an embedded file.
      Parameters:
      filename - the root document of the target (null if the target is in the same document)
      target - a path to the target document of this action
      dest - the destination inside the target document, can be of type PdfDestination, PdfName, or PdfString
      newWindow - if true, the destination document should be opened in a new window
      Returns:
      a GoToE action
    • setOCGstate

      public static PdfAction setOCGstate(List<Object> state, boolean preserveRB)
      A set-OCG-state action (PDF 1.5) sets the state of one or more optional content groups.
      Parameters:
      state - an array consisting of any number of sequences beginning with a PdfName or String (ON, OFF, or Toggle) followed by one or more optional content group dictionaries PdfLayer or a PdfIndirectReference to a PdfLayer.
      The array elements are processed from left to right; each name is applied to the subsequent groups until the next name is encountered:
      • ON sets the state of subsequent groups to ON
      • OFF sets the state of subsequent groups to OFF
      • Toggle reverses the state of subsequent groups
      preserveRB - if true, indicates that radio-button state relationships between optional content groups (as specified by the RBGroups entry in the current configuration dictionary) should be preserved when the states in the state array are applied. That is, if a group is set to ON (either by ON or Toggle) during processing of the state array, any other groups belong to the same radio-button group are turned OFF. If a group is set to OFF, there is no effect on other groups.
      If false, radio-button state relationships, if any, are ignored
      Returns:
      the action
    • next

      public void next(PdfAction na)
      Add a chained action.
      Parameters:
      na - the next action