Package com.itextpdf.kernel.pdf.action
Class PdfRendition
This a wrapper around a rendition dictionary. See ISO 32000-1 sections 13.2.3.2, 13.2.3.3.
-
Constructor Summary
ConstructorDescriptionPdfRendition
(PdfDictionary pdfObject) Creates a new wrapper around an existingPdfDictionary
PdfRendition
(String file, PdfFileSpec fs, String mimeType) Creates a new wrapper around a newly created media rendition dictionary object. -
Method Summary
Modifier and TypeMethodDescriptionvoid
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.Methods inherited from class com.itextpdf.kernel.pdf.PdfObjectWrapper
ensureObjectIsAddedToDocument, ensureUnderlyingObjectHasIndirectReference, getPdfObject, isFlushed, makeIndirect, makeIndirect, markObjectAsIndirect, setForbidRelease, setModified, setPdfObject, unsetForbidRelease
-
Constructor Details
-
PdfRendition
Creates a new wrapper around an existingPdfDictionary
- Parameters:
-
pdfObject
- a rendition object to create a wrapper for
-
PdfRendition
Creates a new wrapper around a newly created media rendition dictionary object.- Parameters:
-
file
- a text string specifying the name of the file to display -
fs
- a file specification that specifies the actual media data -
mimeType
- an ASCII string identifying the type of data
-
-
Method Details
-
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.
-