Package com.itextpdf.kernel.pdf.action
Class PdfAction
A wrapper for action dictionaries (ISO 32000-1 section 12.6). An action dictionary defines the characteristics and behaviour of an action.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
A possible submit valuestatic final int
A possible submit valuestatic final int
A possible submit valuestatic final int
A possible submit valuestatic final int
A possible submit valuestatic final int
A possible submit valuestatic final int
A possible submit valuestatic final int
A possible submit valuestatic final int
A possible submit valuestatic final int
A possible submit valuestatic final int
A possible submit valuestatic final int
A possible submit valuestatic final int
A possible submit valuestatic final int
A possible submit value -
Constructor Summary
ConstructorDescriptionConstructs an empty action that can be further modified.PdfAction
(PdfDictionary pdfObject) Constructs aPdfAction
instance with a given dictionary. -
Method Summary
Modifier and TypeMethodDescriptionstatic PdfAction
createGoTo
(PdfDestination destination) Creates a GoTo action (section 12.6.4.2 of ISO 32000-1) via a given destination.static PdfAction
createGoTo
(String destination) Creates a GoTo action (section 12.6.4.2 of ISO 32000-1) via a givenPdfStringDestination
name.static PdfAction
createGoToE
(PdfFileSpec fileSpec, PdfDestination destination, boolean newWindow, PdfTarget targetDictionary) Creates a GoToE action, or embedded file action (section 12.6.4.4 of ISO 32000-1).static PdfAction
createGoToE
(PdfDestination destination, boolean newWindow, PdfTarget targetDictionary) Creates a GoToE action, or embedded file action (section 12.6.4.4 of ISO 32000-1).static PdfAction
createGoToR
(PdfFileSpec fileSpec, PdfDestination destination) Creates a GoToR action, or remote action (section 12.6.4.3 of ISO 32000-1).static PdfAction
createGoToR
(PdfFileSpec fileSpec, PdfDestination destination, boolean newWindow) Creates a GoToR action, or remote action (section 12.6.4.3 of ISO 32000-1).static PdfAction
createGoToR
(String filename, int pageNum) Creates a GoToR action, or remote action (section 12.6.4.3 of ISO 32000-1).static PdfAction
createGoToR
(String filename, int pageNum, boolean newWindow) Creates a GoToR action, or remote action (section 12.6.4.3 of ISO 32000-1).static PdfAction
createGoToR
(String filename, String destination) Creates a GoToR action, or remote action (section 12.6.4.3 of ISO 32000-1).static PdfAction
createGoToR
(String filename, String destination, boolean newWindow) Creates a GoToR action, or remote action (section 12.6.4.3 of ISO 32000-1).static PdfAction
createHide
(PdfAnnotation[] annotations, boolean hidden) Creates a Hide action (section 12.6.4.10 of ISO 32000-1).static PdfAction
createHide
(PdfAnnotation annotation, boolean hidden) Creates a Hide action (section 12.6.4.10 of ISO 32000-1).static PdfAction
createHide
(String[] text, boolean hidden) Creates a Hide action (section 12.6.4.10 of ISO 32000-1).static PdfAction
createHide
(String text, boolean hidden) Creates a Hide action (section 12.6.4.10 of ISO 32000-1).static PdfAction
createJavaScript
(String javaScript) Creates a JavaScript action (section 12.6.4.16 of ISO 32000-1).static PdfAction
createLaunch
(PdfFileSpec fileSpec) Creates a Launch action (section 12.6.4.5 of ISO 32000-1).static PdfAction
createLaunch
(PdfFileSpec fileSpec, boolean newWindow) Creates a Launch action (section 12.6.4.5 of ISO 32000-1).static PdfAction
createMovie
(PdfAnnotation annotation, String title, PdfName operation) Creates a Movie annotation (section 12.6.4.9 of ISO 32000-1).static PdfAction
createNamed
(PdfName namedAction) Creates a Named action (section 12.6.4.11 of ISO 32000-1).static PdfAction
createRendition
(String file, PdfFileSpec fileSpec, String mimeType, PdfAnnotation screenAnnotation) Creates a Rendition action (section 12.6.4.13 of ISO 32000-1).static PdfAction
createResetForm
(Object[] names, int flags) Creates a Reset-Form Action (section 12.7.5.3 of ISO 32000-1).static PdfAction
createSetOcgState
(List<PdfActionOcgState> states) Creates a Set-OCG-State action (section 12.6.4.12 of ISO 32000-1).static PdfAction
createSetOcgState
(List<PdfActionOcgState> states, boolean preserveRb) Creates a Set-OCG-State action (section 12.6.4.12 of ISO 32000-1).static PdfAction
createSound
(PdfStream sound) Creates a Sound action (section 12.6.4.8 of ISO 32000-1).static PdfAction
createSound
(PdfStream sound, float volume, boolean synchronous, boolean repeat, boolean mix) Creates a Sound action (section 12.6.4.8 of ISO 32000-1).static PdfAction
createSubmitForm
(String file, Object[] names, int flags) Creates a Submit-Form Action (section 12.7.5.2 of ISO 32000-1).static PdfAction
createThread
(PdfFileSpec fileSpec) Creates a Thread action (section 12.6.4.6 of ISO 32000-1).static PdfAction
createThread
(PdfFileSpec fileSpec, PdfObject destinationThread, PdfObject bead) Creates a Thread action (section 12.6.4.6 of ISO 32000-1).static PdfAction
Creates a URI action (section 12.6.4.7 of ISO 32000-1).static PdfAction
Creates a URI action (section 12.6.4.7 of ISO 32000-1).void
flush()
To manually flush aPdfObject
behind this wrapper, you have to ensure that this object is added to the document, i.e.protected boolean
Defines if the object behind this wrapper must be an indirect object in the resultant document.void
Adds a chained action.Inserts the value into the underlying object of thisPdfAction
and associates it with the specified key.static void
setAdditionalAction
(PdfObjectWrapper<PdfDictionary> wrapper, PdfName key, PdfAction action) Adds an additional action to the providedPdfObjectWrapper
<PdfDictionary
> wrapper.Methods inherited from class com.itextpdf.kernel.pdf.PdfObjectWrapper
ensureObjectIsAddedToDocument, ensureUnderlyingObjectHasIndirectReference, getPdfObject, isFlushed, makeIndirect, makeIndirect, markObjectAsIndirect, setForbidRelease, setModified, setPdfObject, unsetForbidRelease
-
Field Details
-
SUBMIT_EXCLUDE
public static final int SUBMIT_EXCLUDEA possible submit value- See Also:
-
SUBMIT_INCLUDE_NO_VALUE_FIELDS
public static final int SUBMIT_INCLUDE_NO_VALUE_FIELDSA possible submit value- See Also:
-
SUBMIT_HTML_FORMAT
public static final int SUBMIT_HTML_FORMATA possible submit value- See Also:
-
SUBMIT_HTML_GET
public static final int SUBMIT_HTML_GETA possible submit value- See Also:
-
SUBMIT_COORDINATES
public static final int SUBMIT_COORDINATESA possible submit value- See Also:
-
SUBMIT_XFDF
public static final int SUBMIT_XFDFA possible submit value- See Also:
-
SUBMIT_INCLUDE_APPEND_SAVES
public static final int SUBMIT_INCLUDE_APPEND_SAVESA possible submit value- See Also:
-
SUBMIT_INCLUDE_ANNOTATIONS
public static final int SUBMIT_INCLUDE_ANNOTATIONSA possible submit value- See Also:
-
SUBMIT_PDF
public static final int SUBMIT_PDFA possible submit value- See Also:
-
SUBMIT_CANONICAL_FORMAT
public static final int SUBMIT_CANONICAL_FORMATA possible submit value- See Also:
-
SUBMIT_EXCL_NON_USER_ANNOTS
public static final int SUBMIT_EXCL_NON_USER_ANNOTSA possible submit value- See Also:
-
SUBMIT_EXCL_F_KEY
public static final int SUBMIT_EXCL_F_KEYA possible submit value- See Also:
-
SUBMIT_EMBED_FORM
public static final int SUBMIT_EMBED_FORMA possible submit value- See Also:
-
RESET_EXCLUDE
public static final int RESET_EXCLUDEA possible submit value- See Also:
-
-
Constructor Details
-
PdfAction
public PdfAction()Constructs an empty action that can be further modified. -
PdfAction
Constructs aPdfAction
instance with a given dictionary. It can be used for handy property reading in reading mode or modifying in stamping mode.- Parameters:
-
pdfObject
- the dictionary to construct the wrapper around
-
-
Method Details
-
createGoTo
Creates a GoTo action (section 12.6.4.2 of ISO 32000-1) via a givenPdfStringDestination
name.- Parameters:
-
destination
-PdfStringDestination
name - Returns:
- created action
-
createGoToR
Creates a GoToR action, or remote action (section 12.6.4.3 of ISO 32000-1).- Parameters:
-
filename
- the remote destination file to jump to -
pageNum
- the remote destination document page to jump to - Returns:
- created action
-
createGoToR
Creates a GoToR action, or remote action (section 12.6.4.3 of ISO 32000-1).- Parameters:
-
filename
- the remote destination file to jump to -
pageNum
- the remote destination document page to jump to -
newWindow
- a flag specifying whether to open the destination document in a new window - Returns:
- created action
-
createGoToR
Creates a GoToR action, or remote action (section 12.6.4.3 of ISO 32000-1).- Parameters:
-
filename
- the remote destination file to jump to -
destination
- the string destination in the remote document to jump to -
newWindow
- a flag specifying whether to open the destination document in a new window - Returns:
- created action
-
createGoToR
Creates a GoToR action, or remote action (section 12.6.4.3 of ISO 32000-1).- Parameters:
-
filename
- the remote destination file to jump to -
destination
- the string destination in the remote document to jump to - Returns:
- created action
-
createLaunch
Creates a Launch action (section 12.6.4.5 of ISO 32000-1).- Parameters:
-
fileSpec
- the application that shall be launched or the document that shall beopened or printed -
newWindow
- a flag specifying whether to open the destination document in a new window - Returns:
- created action
-
createLaunch
Creates a Launch action (section 12.6.4.5 of ISO 32000-1).- Parameters:
-
fileSpec
- the application that shall be launched or the document that shall beopened or printed - Returns:
- created action
-
createThread
public static PdfAction createThread(PdfFileSpec fileSpec, PdfObject destinationThread, PdfObject bead) Creates a Thread action (section 12.6.4.6 of ISO 32000-1). A thread action jumps to a specified bead on an article thread (see 12.4.3, "Articles"), in either the current document or a different one. Table 205 shows the action dictionary entries specific to this type of action.- Parameters:
-
fileSpec
- the file containing the thread. If this entry is absent, the thread is in the current file -
destinationThread
- the destination thread -
bead
- the bead in the destination thread - Returns:
- created action
-
createThread
Creates a Thread action (section 12.6.4.6 of ISO 32000-1). A thread action jumps to a specified bead on an article thread (see 12.4.3, "Articles"), in either the current document or a different one. Table 205 shows the action dictionary entries specific to this type of action.- Parameters:
-
fileSpec
- the file containing the thread. If this entry is absent, the thread is in the current file - Returns:
- created action
-
createURI
Creates a URI action (section 12.6.4.7 of ISO 32000-1).- Parameters:
-
uri
- the uniform resource identifier to resolve - Returns:
- created action
-
createURI
Creates a URI action (section 12.6.4.7 of ISO 32000-1).- Parameters:
-
uri
- the uniform resource identifier to resolve -
isMap
- a flag specifying whether to track the mouse position when the URI is resolved - Returns:
- created action
-
createSound
Creates a Sound action (section 12.6.4.8 of ISO 32000-1). Deprecated in PDF 2.0.- Parameters:
-
sound
- a sound object defining the sound that shall be played (see section 13.3 of ISO 32000-1) - Returns:
- created action
-
createSound
public static PdfAction createSound(PdfStream sound, float volume, boolean synchronous, boolean repeat, boolean mix) Creates a Sound action (section 12.6.4.8 of ISO 32000-1). Deprecated in PDF 2.0.- Parameters:
-
sound
- a sound object defining the sound that shall be played (see section 13.3 of ISO 32000-1) -
volume
- the volume at which to play the sound, in the range -1.0 to 1.0. Default value: 1.0 -
synchronous
- a flag specifying whether to play the sound synchronously or asynchronously. If this flag istrue
, the conforming reader retains control, allowing no further user interaction other than canceling the sound, until the sound has been completely played. Default value:false
-
repeat
- a flag specifying whether to repeat the sound indefinitely If this entry is present, the Synchronous entry shall be ignored. Default value:false
-
mix
- a flag specifying whether to mix this sound with any other sound already playing - Returns:
- created action
-
createMovie
Creates a Movie annotation (section 12.6.4.9 of ISO 32000-1). Deprecated in PDF 2.0.- Parameters:
-
annotation
- a movie annotation identifying the movie that shall be played -
title
- the title of a movie annotation identifying the movie that shall be played -
operation
- the operation that shall be performed on the movie. Shall be one of the following:PdfName.Play
,PdfName.Stop
,PdfName.Pause
,PdfName.Resume
- Returns:
- created annotation
-
createHide
Creates a Hide action (section 12.6.4.10 of ISO 32000-1).- Parameters:
-
annotation
- the annotation to be hidden or shown -
hidden
- a flag indicating whether to hide the annotation (true
) or show it (false
) - Returns:
- created action
-
createHide
Creates a Hide action (section 12.6.4.10 of ISO 32000-1).- Parameters:
-
annotations
- the annotations to be hidden or shown -
hidden
- a flag indicating whether to hide the annotation (true
) or show it (false
) - Returns:
- created action
-
createHide
Creates a Hide action (section 12.6.4.10 of ISO 32000-1).- Parameters:
-
text
- a text string giving the fully qualified field name of an interactive form field whose associated widget annotation or annotations are to be affected -
hidden
- a flag indicating whether to hide the annotation (true
) or show it (false
) - Returns:
- created action
-
createHide
Creates a Hide action (section 12.6.4.10 of ISO 32000-1).- Parameters:
-
text
- a text string array giving the fully qualified field names of interactive form fields whose associated widget annotation or annotations are to be affected -
hidden
- a flag indicating whether to hide the annotation (true
) or show it (false
) - Returns:
- created action
-
createNamed
Creates a Named action (section 12.6.4.11 of ISO 32000-1).- Parameters:
-
namedAction
- the name of the action that shall be performed. Shall be one of the following:PdfName.NextPage
,PdfName.PrevPage
,PdfName.FirstPage
,PdfName.LastPage
- Returns:
- created action
-
createSetOcgState
Creates a Set-OCG-State action (section 12.6.4.12 of ISO 32000-1).- Parameters:
-
states
- a list ofPdfActionOcgState
state descriptions - Returns:
- created action
-
createSetOcgState
Creates a Set-OCG-State action (section 12.6.4.12 of ISO 32000-1).- Parameters:
-
states
- states a list ofPdfActionOcgState
state descriptions -
preserveRb
- If true, indicates that radio-button state relationships between optional content groups should be preserved when the states are applied - Returns:
- created action
-
createRendition
public static PdfAction createRendition(String file, PdfFileSpec fileSpec, String mimeType, PdfAnnotation screenAnnotation) Creates a Rendition action (section 12.6.4.13 of ISO 32000-1).- Parameters:
-
file
- the name of the media clip, for use in the user interface. -
fileSpec
- a full file specification or form XObject that specifies the actual media data -
mimeType
- an ASCII string identifying the type of data -
screenAnnotation
- a screen annotation - Returns:
- created action
-
createJavaScript
Creates a JavaScript action (section 12.6.4.16 of ISO 32000-1).- Parameters:
-
javaScript
- a text string containing the JavaScript script to be executed. - Returns:
- created action
-
createSubmitForm
Creates a Submit-Form Action (section 12.7.5.2 of ISO 32000-1).- Parameters:
-
file
- a uniform resource locator, as described in 7.11.5, "URL Specifications" -
names
- an array identifying which fields to include in the submission or which to exclude, depending on the setting of the Include/Exclude flag in the Flags entry. This is an optional parameter and can benull
-
flags
- a set of flags specifying various characteristics of the action (see Table 237 of ISO 32000-1). Default value to be passed: 0. - Returns:
- created action
-
createResetForm
Creates a Reset-Form Action (section 12.7.5.3 of ISO 32000-1).- Parameters:
-
names
- an array identifying which fields to reset or which to exclude from resetting, depending on the setting of the Include/Exclude flag in the Flags entry (see Table 239 of ISO 32000-1). -
flags
- a set of flags specifying various characteristics of the action (see Table 239 of ISO 32000-1). Default value to be passed: 0. - Returns:
- created action
-
setAdditionalAction
public static void setAdditionalAction(PdfObjectWrapper<PdfDictionary> wrapper, PdfName key, PdfAction action) Adds an additional action to the providedPdfObjectWrapper
<PdfDictionary
> wrapper. -
next
Adds a chained action.- Parameters:
-
nextAction
- the next action or sequence of actions that shall be performed after the current action
-
put
Inserts the value into the underlying object of thisPdfAction
and associates it with the specified key. If the key is already present in thisPdfAction
, this method will override the old value with the specified one.- Parameters:
-
key
- key to insert or to override -
value
- the value to associate with the specified key - Returns:
-
this
PdfAction
instance
-
flush
public void flush()To manually flush aPdfObject
behind this wrapper, you have to ensure that this object is added to the document, i.e. it has an indirect reference. Basically this means that before flushing you need to explicitly callPdfObjectWrapper.makeIndirect(PdfDocument)
. For example: wrapperInstance.makeIndirect(document).flush(); Note that not every wrapper require this, only those that have such warning in documentation.- Overrides:
-
flush
in classPdfObjectWrapper<PdfDictionary>
-
isWrappedObjectMustBeIndirect
protected boolean isWrappedObjectMustBeIndirect()Defines if the object behind this wrapper must be an indirect object in the resultant document.
If this method returns true it doesn't necessarily mean that object must be in the indirect state at any moment, but rather defines that when the object will be written to the document it will be transformed into indirect object if it's not indirect yet.
Return value of this method shouldn't depend on any logic, it should return always true or false.- Specified by:
-
isWrappedObjectMustBeIndirect
in classPdfObjectWrapper<PdfDictionary>
- Returns:
- true if in the resultant document the object behind the wrapper must be indirect, otherwise false.