Package com.itextpdf.layout.renderer
Class CellRenderer
java.lang.Object
com.itextpdf.layout.renderer.AbstractRenderer
com.itextpdf.layout.renderer.BlockRenderer
com.itextpdf.layout.renderer.CellRenderer
- All Implemented Interfaces:
-
IPropertyContainer,IRenderer
Represents a renderer for the
Cell layout element.
-
Field Summary
Fields inherited from class com.itextpdf.layout.renderer.AbstractRenderer
childRenderers, EPS, flushed, INF, isLastRendererForModelElement, modelElement, occupiedArea, OVERLAP_EPSILON, parent, positionedRenderers, properties -
Constructor Summary
ConstructorsConstructorDescriptionCellRenderer(Cell modelElement) Creates a CellRenderer from its corresponding layout object. -
Method Summary
Modifier and TypeMethodDescriptionprotected RectangleapplyBorderBox(Rectangle rect, Border[] borders, boolean reverse) Applies the given border box (borders) on the given rectangleprotected RectangleapplyMargins(Rectangle rect, UnitValue[] margins, boolean reverse) Applies given margins on the given rectangleprotected RectangleapplySpacings(Rectangle rect, boolean reverse) Applies spacings on the given rectangle.protected RectangleapplySpacings(Rectangle rect, float[] spacings, boolean reverse) Applies given spacings on the given rectangle.protected AbstractRenderercreateOverflowRenderer(int layoutResult) Creates an overflow renderer.protected AbstractRenderercreateSplitRenderer(int layoutResult) Creates a split renderer.voiddrawBackground(DrawContext drawContext) Draws a background layer if it is defined by a keyProperty.BACKGROUNDin either the layout element or thisIRendereritself.voiddrawBorder(DrawContext drawContext) Performs the drawing operation for the border of this renderer, if defined by theProperty.BORDER_TOP,Property.BORDER_RIGHT,Property.BORDER_BOTTOMandProperty.BORDER_LEFTvalues in either the layout element or thisIRendereritself.Gets the model element associated with this renderer.Gets a new instance of this class to be used as a next renderer, after this renderer is used, ifBlockRenderer.layout(LayoutContext)is called more than once.protected FloatretrieveWidth(float parentBoxWidth) Retrieves element's fixed content box width, if it's set.Methods inherited from class com.itextpdf.layout.renderer.BlockRenderer
applyRotationLayout, applyVerticalAlignment, beginRotationIfApplied, createRotationTransformInsideOccupiedArea, draw, endRotationIfApplied, getMinMaxWidth, getMinMaxWidth, getOccupiedAreaBBox, getResolvedFont, layoutMethods inherited from class com.itextpdf.layout.renderer.AbstractRenderer
addAllProperties, addChild, alignChildHorizontally, allowLastYLineRecursiveExtraction, applyAbsolutePosition, applyAction, applyBorderBox, applyDestination, applyDestinationsAndAnnotation, applyLinkAnnotation, applyMargins, applyPaddings, applyPaddings, applyRelativePositioningTranslation, beginElementOpacityApplying, beginTransformationIfApplied, calculateAbsolutePdfBBox, calculateBBox, calculateShiftToPositionBBoxOfPointsAt, clipBackgroundArea, clipBackgroundArea, clipBorderArea, createXObject, deleteOwnProperty, deleteProperty, drawChildren, endElementOpacityApplying, endTransformationIfApplied, getBackgroundArea, getBorderAreaBBox, getBorderRadii, getBorders, getChildRenderers, getDefaultProperty, getFirstYLineRecursively, getInnerAreaBBox, getLastYLineRecursively, getMargins, getOccupiedArea, getOwnProperties, getOwnProperty, getPaddings, getParent, getProperty, getProperty, getPropertyAsBoolean, getPropertyAsColor, getPropertyAsFloat, getPropertyAsFloat, getPropertyAsFont, getPropertyAsInteger, getPropertyAsTransparentColor, getPropertyAsUnitValue, hasAbsoluteUnitValue, hasOwnOrModelProperty, hasOwnProperty, hasProperty, hasRelativeUnitValue, initElementAreas, isAbsolutePosition, isBorderBoxSizing, isFirstOnRootArea, isFixedLayout, isFlushed, isKeepTogether, isNotFittingHeight, isNotFittingLayoutArea, isNotFittingWidth, isOverflowFit, isOverflowProperty, isOverflowProperty, isOverflowProperty, isPositioned, isRelativePosition, isStaticLayout, move, rectangleToPointsList, retrieveHeight, retrieveMaxHeight, retrieveMaxWidth, retrieveMinHeight, retrieveMinWidth, retrieveResolvedDeclaredHeight, retrieveUnitValue, retrieveUnitValue, setBorders, setMinMaxWidthBasedOnFixedWidth, setParent, setProperty, toString, transformPoints, updateHeight, updateHeightsOnSplit, updateMaxHeight, updateMinHeight, updateWidth
-
Constructor Details
-
CellRenderer
Creates a CellRenderer from its corresponding layout object.- Parameters:
-
modelElement- theCellwhich this object should manage
-
-
Method Details
-
getModelElement
Gets the model element associated with this renderer.- Specified by:
-
getModelElementin interfaceIRenderer - Overrides:
-
getModelElementin classAbstractRenderer - Returns:
-
the model element, as a
container of properties
-
retrieveWidth
Description copied from class:AbstractRendererRetrieves element's fixed content box width, if it's set. Takes into accountProperty.BOX_SIZING,Property.MIN_WIDTH, andProperty.MAX_WIDTHproperties.- Overrides:
-
retrieveWidthin classAbstractRenderer - Parameters:
-
parentBoxWidth- width of the parent element content box. If element has relative width, it will be calculated relatively to this parameter. - Returns:
- element's fixed content box width or null if it's not set.
- See Also:
-
createSplitRenderer
Creates a split renderer.- Overrides:
-
createSplitRendererin classBlockRenderer - Parameters:
-
layoutResult- the result of content layouting - Returns:
-
a new
AbstractRendererinstance
-
createOverflowRenderer
Creates an overflow renderer.- Overrides:
-
createOverflowRendererin classBlockRenderer - Parameters:
-
layoutResult- the result of content layouting - Returns:
-
a new
AbstractRendererinstance
-
drawBackground
Description copied from class:AbstractRendererDraws a background layer if it is defined by a keyProperty.BACKGROUNDin either the layout element or thisIRendereritself.- Overrides:
-
drawBackgroundin classAbstractRenderer - Parameters:
-
drawContext- the context (canvas, document, etc) of this drawing operation.
-
drawBorder
Performs the drawing operation for the border of this renderer, if defined by theProperty.BORDER_TOP,Property.BORDER_RIGHT,Property.BORDER_BOTTOMandProperty.BORDER_LEFTvalues in either the layout element or thisIRendereritself.- Overrides:
-
drawBorderin classAbstractRenderer - Parameters:
-
drawContext- the context (canvas, document, etc.) of this drawing operation
-
applyBorderBox
Description copied from class:AbstractRendererApplies the given border box (borders) on the given rectangle- Overrides:
-
applyBorderBoxin classAbstractRenderer - Parameters:
-
rect- a rectangle paddings will be applied on. -
borders- thebordersto be applied on the given rectangle -
reverse- indicates whether the border box will be applied inside (in case of false) or outside (in case of false) the rectangle. - Returns:
-
a
border boxof the renderer
-
applyMargins
Description copied from class:AbstractRendererApplies given margins on the given rectangle- Overrides:
-
applyMarginsin classAbstractRenderer - Parameters:
-
rect- a rectangle margins will be applied on. -
margins- the margins to be applied on the given rectangle -
reverse- indicates whether margins will be applied inside (in case of false) or outside (in case of true) the rectangle. - Returns:
-
a
border boxof the renderer
-
applySpacings
Applies spacings on the given rectangle.- Parameters:
-
rect- a rectangle spacings will be applied on -
reverse- indicates whether spacings will be applied inside (in case of false) or outside (in case of true) the rectangle. - Returns:
-
a
border boxof the renderer
-
applySpacings
Applies given spacings on the given rectangle.- Parameters:
-
rect- a rectangle spacings will be applied on -
spacings- the spacings to be applied on the given rectangle -
reverse- indicates whether spacings will be applied inside (in case of false) or outside (in case of true) the rectangle. - Returns:
-
a
border boxof the renderer
-
getNextRenderer
Gets a new instance of this class to be used as a next renderer, after this renderer is used, ifBlockRenderer.layout(LayoutContext)is called more than once.If a renderer overflows to the next area, iText uses this method to create a renderer for the overflow part. So if one wants to extend
CellRenderer, one should override this method: otherwise the default method will be used and thus the default rather than the custom renderer will be created.- Returns:
- new renderer instance
-