Class AbstractPdfShading
java.lang.Object
com.itextpdf.kernel.pdf.PdfObjectWrapper<PdfDictionary>
com.itextpdf.kernel.pdf.colorspace.shading.AbstractPdfShading
- Direct Known Subclasses:
-
AbstractPdfShadingBlend,AbstractPdfShadingMesh,PdfFunctionBasedShading
The PdfShading class that represents the Shading Dictionary PDF object.
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractPdfShading(PdfDictionary pdfObject) Creates theAbstractPdfShadingobject from the existingPdfDictionary.protectedAbstractPdfShading(PdfDictionary pdfObject, int type, PdfColorSpace colorSpace) Creates theAbstractPdfShadingobject from the existingPdfDictionary, using provided type and colorspace. -
Method Summary
Modifier and TypeMethodDescriptionfinal voidflush()To manually flush aPdfObjectbehind this wrapper, you have to ensure that this object is added to the document, i.e.Gets the color space in which colour values shall be expressed.Gets the function PdfObject that represents color transitions across the shading geometry.intGets the shading type.protected booleanDefines if the object behind this wrapper must be an indirect object in the resultant document.static AbstractPdfShadingmakeShading(PdfDictionary shadingDictionary) Creates theAbstractPdfShadingobject from the existingPdfDictionarywith corresponding type.final voidsetFunction(IPdfFunction function) Sets the function that represents color transitions across the shading geometry as one object.final voidsetFunction(IPdfFunction[] functions) Sets the function object that represents color transitions across the shading geometry as an array of functions.Methods inherited from class com.itextpdf.kernel.pdf.PdfObjectWrapper
ensureObjectIsAddedToDocument, ensureUnderlyingObjectHasIndirectReference, getPdfObject, isFlushed, makeIndirect, makeIndirect, markObjectAsIndirect, setForbidRelease, setModified, setPdfObject, unsetForbidRelease
-
Constructor Details
-
AbstractPdfShading
Creates theAbstractPdfShadingobject from the existingPdfDictionary.- Parameters:
-
pdfObject-PdfDictionaryfrom which theAbstractPdfShadingobject will be created
-
AbstractPdfShading
Creates theAbstractPdfShadingobject from the existingPdfDictionary, using provided type and colorspace.- Parameters:
-
pdfObject-PdfDictionaryfrom which theAbstractPdfShadingobject will be created -
type- type with which thisAbstractPdfShadingobject will be created -
colorSpace-PdfColorSpacewith which thisAbstractPdfShadingobject will be created
-
-
Method Details
-
makeShading
Creates theAbstractPdfShadingobject from the existingPdfDictionarywith corresponding type.- Parameters:
-
shadingDictionary-PdfDictionaryfrom which theAbstractPdfShadingobject will be created - Returns:
-
Created
AbstractPdfShadingobject
-
getShadingType
public int getShadingType()Gets the shading type.- Returns:
-
int value of
PdfName.ShadingType
-
getColorSpace
Gets the color space in which colour values shall be expressed.- Returns:
-
PdfObjectColor space
-
getFunction
Gets the function PdfObject that represents color transitions across the shading geometry.- Returns:
-
PdfObjectFunction
-
setFunction
Sets the function that represents color transitions across the shading geometry as one object.- Parameters:
-
function- TheIPdfFunctionto set
-
setFunction
Sets the function object that represents color transitions across the shading geometry as an array of functions.- Parameters:
-
functions- The array ofIPdfFunctionto be set
-
flush
public final void flush()To manually flush aPdfObjectbehind 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:
-
flushin 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:
-
isWrappedObjectMustBeIndirectin classPdfObjectWrapper<PdfDictionary> - Returns:
- true if in the resultant document the object behind the wrapper must be indirect, otherwise false.
-