Package com.itextpdf.kernel.pdf.layer
Class PdfVisibilityExpression
java.lang.Object
com.itextpdf.kernel.pdf.PdfObjectWrapper<PdfArray>
com.itextpdf.kernel.pdf.layer.PdfVisibilityExpression
An array specifying a visibility expression, used to compute visibility of content based on a set of optional content groups.
-
Constructor Summary
ConstructorDescriptionPdfVisibilityExpression
(PdfArray visibilityExpressionArray) Constructs a new PdfVisibilityExpression instance by its raw PdfArray.PdfVisibilityExpression
(PdfName operator) Creates a visibility expression. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addOperand
(PdfLayer layer) Adds a new operand to the current visibility expression.void
addOperand
(PdfVisibilityExpression expression) Adds a new opeand to the current visibility expression.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, flush, getPdfObject, isFlushed, makeIndirect, makeIndirect, markObjectAsIndirect, setForbidRelease, setModified, setPdfObject, unsetForbidRelease
-
Constructor Details
-
PdfVisibilityExpression
Constructs a new PdfVisibilityExpression instance by its raw PdfArray.- Parameters:
-
visibilityExpressionArray
- the array representing the visibility expression
-
PdfVisibilityExpression
Creates a visibility expression.- Parameters:
-
operator
- should be either PdfName#And, PdfName#Or, or PdfName#Not
-
-
Method Details
-
addOperand
Adds a new operand to the current visibility expression.- Parameters:
-
layer
- the layer operand to be added.
-
addOperand
Adds a new opeand to the current visibility expression.- Parameters:
-
expression
- the PdfVisibilityExpression instance operand to be added
-
isWrappedObjectMustBeIndirect
protected boolean isWrappedObjectMustBeIndirect()Description copied from class:PdfObjectWrapper
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<PdfArray>
- Returns:
- true if in the resultant document the object behind the wrapper must be indirect, otherwise false.
-