com.lowagie.text.pdf

## Class PdfAction

- java.lang.Object
- - com.lowagie.text.pdf.PdfObject
  - - com.lowagie.text.pdf.PdfDictionary
    - - com.lowagie.text.pdf.PdfAction

    public class PdfAction
    extends PdfDictionary

A `PdfAction` defines an action that can be triggered from a PDF file.

See Also:
  `PdfDictionary`

### Field Summary

Fields
`static int` `FIRSTPAGE` A named action to go to the first page.
`static int` `LASTPAGE` A named action to go to the last page.
`static int` `NEXTPAGE` A named action to go to the next page.
`static int` `PREVPAGE` A named action to go to the previous page.
`static int` `PRINTDIALOG` A named action to open a print dialog.
`static int` `RESET_EXCLUDE` a possible submitvalue
`static int` `SUBMIT_CANONICAL_FORMAT` a possible submitvalue
`static int` `SUBMIT_COORDINATES` a possible submitvalue
`static int` `SUBMIT_EMBED_FORM` a possible submitvalue
`static int` `SUBMIT_EXCL_F_KEY` a possible submitvalue
`static int` `SUBMIT_EXCL_NON_USER_ANNOTS` a possible submitvalue
`static int` `SUBMIT_EXCLUDE` a possible submitvalue
`static int` `SUBMIT_HTML_FORMAT` a possible submitvalue
`static int` `SUBMIT_HTML_GET` a possible submitvalue
`static int` `SUBMIT_INCLUDE_ANNOTATIONS` a possible submitvalue
`static int` `SUBMIT_INCLUDE_APPEND_SAVES` a possible submitvalue
`static int` `SUBMIT_INCLUDE_NO_VALUE_FIELDS` a possible submitvalue
`static int` `SUBMIT_PDF` a possible submitvalue
`static int` `SUBMIT_XFDF` a possible submitvalue

### Fields inherited from class com.lowagie.text.pdf.PdfDictionary

`CATALOG, FONT, hashMap, OUTLINES, PAGE, PAGES`

### Fields inherited from class com.lowagie.text.pdf.PdfObject

`ARRAY, BOOLEAN, bytes, DICTIONARY, INDIRECT, indRef, NAME, NOTHING, NULL, NUMBER, STREAM, STRING, TEXT_PDFDOCENCODING, TEXT_UNICODE, type`

### Constructor Summary

Constructors
Constructor and Description
`PdfAction()` Create an empty action.
`PdfAction(int named)` Implements name actions.
`PdfAction(PdfIndirectReference destination)` Constructs a new `PdfAction` of Subtype GoTo.
`PdfAction(java.lang.String url)` Constructs a new `PdfAction` of Subtype URI.
`PdfAction(java.lang.String url, boolean isMap)` Construct a new `PdfAction` of Subtype URI that accepts the x and y coordinate of the position that was clicked.
`PdfAction(java.lang.String filename, int page)` Constructs a new `PdfAction` of Subtype GoToR.
`PdfAction(java.lang.String filename, java.lang.String name)` Constructs a new `PdfAction` of Subtype GoToR.
`PdfAction(java.lang.String application, java.lang.String parameters, java.lang.String operation, java.lang.String defaultDir)` Launches an application or a document.
`PdfAction(java.net.URL url)` Constructs a new `PdfAction` of Subtype URI.
`PdfAction(java.net.URL url, boolean isMap)` Construct a new `PdfAction` of Subtype URI that accepts the x and y coordinate of the position that was clicked.

### Method Summary

Methods
`(package private) static PdfArray` `buildArray(java.lang.Object[] names)`
`static PdfAction` `createHide(java.lang.Object[] names, boolean hide)` A Hide action hides or shows objects.
`static PdfAction` `createHide(PdfAnnotation annot, boolean hide)` A Hide action hides or shows an annotation.
`(package private) static PdfAction` `createHide(PdfObject obj, boolean hide)` A Hide action hides or shows an object.
`static PdfAction` `createHide(java.lang.String name, boolean hide)` A Hide action hides or shows an annotation.
`static PdfAction` `createImportData(java.lang.String file)` Creates an Import field.
`static PdfAction` `createLaunch(java.lang.String application, java.lang.String parameters, java.lang.String operation, java.lang.String defaultDir)` Launches an application or a document.
`static PdfAction` `createResetForm(java.lang.Object[] names, int flags)` Creates a resetform.
`static PdfAction` `createSubmitForm(java.lang.String file, java.lang.Object[] names, int flags)` Creates a submit form.
`static PdfAction` `gotoEmbedded(java.lang.String filename, PdfTargetDictionary target, PdfObject dest, boolean newWindow)` Creates a GoToE action to an embedded file.
`static PdfAction` `gotoEmbedded(java.lang.String filename, PdfTargetDictionary target, java.lang.String dest, boolean isName, boolean newWindow)` Creates a GoToE action to an embedded file.
`static PdfAction` `gotoLocalPage(int page, PdfDestination dest, PdfWriter writer)` Creates a GoTo action to an internal page.
`static PdfAction` `gotoLocalPage(java.lang.String dest, boolean isName)` Creates a GoTo action to a named destination.
`static PdfAction` `gotoRemotePage(java.lang.String filename, java.lang.String dest, boolean isName, boolean newWindow)` Creates a GoToR action to a named destination.
`static PdfAction` `javaScript(java.lang.String code, PdfWriter writer)` Creates a JavaScript action.
`static PdfAction` `javaScript(java.lang.String code, PdfWriter writer, boolean unicode)` Creates a JavaScript action.
`void` `next(PdfAction na)` Add a chained action.
`static PdfAction` `rendition(java.lang.String file, PdfFileSpecification fs, java.lang.String mimeType, PdfIndirectReference ref)` Creates a Rendition action
`static PdfAction` `setOCGstate(java.util.ArrayList state, boolean preserveRB)` A set-OCG-state action (PDF 1.5) sets the state of one or more optional content groups.

### Methods inherited from class com.lowagie.text.pdf.PdfDictionary

`contains, get, getAsArray, getAsBoolean, getAsDict, getAsIndirectObject, getAsName, getAsNumber, getAsStream, getAsString, getDirectObject, getKeys, isCatalog, isFont, isOutlineTree, isPage, isPages, merge, mergeDifferent, put, putAll, putEx, remove, size, toPdf, toString`

### Methods inherited from class com.lowagie.text.pdf.PdfObject

`canBeInObjStm, getBytes, getIndRef, isArray, isBoolean, isDictionary, isIndirect, isName, isNull, isNumber, isStream, isString, length, setContent, setIndRef, type`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### FIRSTPAGE

    public static final int FIRSTPAGE

A named action to go to the first page.

See Also:
  Constant Field Values

#### PREVPAGE

    public static final int PREVPAGE

A named action to go to the previous page.

See Also:
  Constant Field Values

#### NEXTPAGE

    public static final int NEXTPAGE

A named action to go to the next page.

See Also:
  Constant Field Values

#### LASTPAGE

    public static final int LASTPAGE

A named action to go to the last page.

See Also:
  Constant Field Values

#### PRINTDIALOG

    public static final int PRINTDIALOG

A named action to open a print dialog.

See Also:
  Constant Field Values

#### SUBMIT_EXCLUDE

    public static final int SUBMIT_EXCLUDE

a possible submitvalue

See Also:
  Constant Field Values

#### SUBMIT_INCLUDE_NO_VALUE_FIELDS

    public static final int SUBMIT_INCLUDE_NO_VALUE_FIELDS

a possible submitvalue

See Also:
  Constant Field Values

#### SUBMIT_HTML_FORMAT

    public static final int SUBMIT_HTML_FORMAT

a possible submitvalue

See Also:
  Constant Field Values

#### SUBMIT_HTML_GET

    public static final int SUBMIT_HTML_GET

a possible submitvalue

See Also:
  Constant Field Values

#### SUBMIT_COORDINATES

    public static final int SUBMIT_COORDINATES

a possible submitvalue

See Also:
  Constant Field Values

#### SUBMIT_XFDF

    public static final int SUBMIT_XFDF

a possible submitvalue

See Also:
  Constant Field Values

#### SUBMIT_INCLUDE_APPEND_SAVES

    public static final int SUBMIT_INCLUDE_APPEND_SAVES

a possible submitvalue

See Also:
  Constant Field Values

#### SUBMIT_INCLUDE_ANNOTATIONS

    public static final int SUBMIT_INCLUDE_ANNOTATIONS

a possible submitvalue

See Also:
  Constant Field Values

#### SUBMIT_PDF

    public static final int SUBMIT_PDF

a possible submitvalue

See Also:
  Constant Field Values

#### SUBMIT_CANONICAL_FORMAT

    public static final int SUBMIT_CANONICAL_FORMAT

a possible submitvalue

See Also:
  Constant Field Values

#### SUBMIT_EXCL_NON_USER_ANNOTS

    public static final int SUBMIT_EXCL_NON_USER_ANNOTS

a possible submitvalue

See Also:
  Constant Field Values

#### SUBMIT_EXCL_F_KEY

    public static final int SUBMIT_EXCL_F_KEY

a possible submitvalue

See Also:
  Constant Field Values

#### SUBMIT_EMBED_FORM

    public static final int SUBMIT_EMBED_FORM

a possible submitvalue

See Also:
  Constant Field Values

#### RESET_EXCLUDE

    public static final int RESET_EXCLUDE

a possible submitvalue

See Also:
  Constant Field Values

### Constructor Detail

#### PdfAction

    public PdfAction()

Create an empty action.

#### PdfAction

    public PdfAction(java.net.URL url)

Constructs a new `PdfAction` of Subtype URI.

Parameters:
  `url` - the Url to go to

#### PdfAction

    public PdfAction(java.net.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` -
  `isMap` -

#### PdfAction

    public PdfAction(java.lang.String url)

Constructs a new `PdfAction` of Subtype URI.

Parameters:
  `url` - the url to go to

#### PdfAction

    public PdfAction(java.lang.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` -
  `isMap` -

#### PdfAction

    PdfAction(PdfIndirectReference destination)

Constructs a new `PdfAction` of Subtype GoTo.

Parameters:
  `destination` - the destination to go to

#### PdfAction

    public PdfAction(java.lang.String filename,
             java.lang.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(java.lang.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(java.lang.String application,
             java.lang.String parameters,
             java.lang.String operation,
             java.lang.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 Detail

#### createLaunch

    public static PdfAction createLaunch(java.lang.String application,
                         java.lang.String parameters,
                         java.lang.String operation,
                         java.lang.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(java.lang.String file,
                      PdfFileSpecification fs,
                      java.lang.String mimeType,
                      PdfIndirectReference ref)
                               throws java.io.IOException

Creates a Rendition action

Parameters:
  `file` -
  `fs` -
  `mimeType` -
  `ref` -
Returns:
  a Media Clip action
Throws:
  `java.io.IOException`

#### javaScript

    public static PdfAction javaScript(java.lang.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(java.lang.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` -
  `hide` -
Returns:
  A Hide Action

#### createHide

    public static PdfAction createHide(java.lang.String name,
                       boolean hide)

A Hide action hides or shows an annotation.

Parameters:
  `name` -
  `hide` -
Returns:
  A Hide Action

#### buildArray

    static PdfArray buildArray(java.lang.Object[] names)

#### createHide

    public static PdfAction createHide(java.lang.Object[] names,
                       boolean hide)

A Hide action hides or shows objects.

Parameters:
  `names` -
  `hide` -
Returns:
  A Hide Action

#### createSubmitForm

    public static PdfAction createSubmitForm(java.lang.String file,
                             java.lang.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(java.lang.Object[] names,
                            int flags)

Creates a resetform.

Parameters:
  `names` - the objects to reset
  `flags` - submit properties
Returns:
  A PdfAction

#### createImportData

    public static PdfAction createImportData(java.lang.String file)

Creates an Import field.

Parameters:
  `file` -
Returns:
  A PdfAction

#### next

    public void next(PdfAction na)

Add a chained action.

Parameters:
  `na` - the next action

#### 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(java.lang.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(java.lang.String filename,
                           java.lang.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(java.lang.String filename,
                         PdfTargetDictionary target,
                         java.lang.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)
  `dest` - the named destination
  `isName` - if true sets the destination as a name, if false sets it as a String
Returns:
  a GoToE action

#### gotoEmbedded

    public static PdfAction gotoEmbedded(java.lang.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(java.util.ArrayList 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