Package com.itextpdf.forms.form.renderer
Class TextAreaRenderer
- java.lang.Object
-
- com.itextpdf.layout.renderer.AbstractRenderer
-
- com.itextpdf.layout.renderer.BlockRenderer
-
- com.itextpdf.forms.form.renderer.AbstractFormFieldRenderer
-
- com.itextpdf.forms.form.renderer.AbstractTextFieldRenderer
-
- com.itextpdf.forms.form.renderer.TextAreaRenderer
-
- All Implemented Interfaces:
IPropertyContainer,IRenderer
public class TextAreaRenderer extends AbstractTextFieldRenderer
TheAbstractTextFieldRendererimplementation for text area fields.
-
-
Field Summary
-
Fields inherited from class com.itextpdf.forms.form.renderer.AbstractTextFieldRenderer
font
-
Fields inherited from class com.itextpdf.forms.form.renderer.AbstractFormFieldRenderer
flatRenderer
-
Fields inherited from class com.itextpdf.layout.renderer.AbstractRenderer
childRenderers, EPS, flushed, INF, isLastRendererForModelElement, modelElement, occupiedArea, OVERLAP_EPSILON, parent, positionedRenderers, properties
-
-
Constructor Summary
Constructors Constructor Description TextAreaRenderer(TextArea modelElement)Creates a newTextAreaRendererinstance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidadjustFieldLayout(LayoutContext layoutContext)Adjusts the field layout.protected voidapplyAcroField(DrawContext drawContext)Applies the AcroField widget.private voidapproximateFontSizeToFitMultiLine(LayoutContext layoutContext)protected IRenderercreateFlatRenderer()Creates the flat renderer instance.(package private) IRenderercreateParagraphRenderer(java.lang.String defaultValue)Creates a paragraph renderer.private voidcropContentLines(java.util.List<LineRenderer> lines, Rectangle bBox)intgetCols()Gets the number of columns.protected java.lang.FloatgetLastYLineRecursively()IRenderergetNextRenderer()Gets a new instance of this class to be used as a next renderer, after this renderer is used, ifIRenderer.layout(LayoutContext)is called more than once.<T1> T1getProperty(int key)Gets the property from this entity.intgetRows()Gets the number of rows.LayoutResultlayout(LayoutContext layoutContext)This method simulates positioning of the renderer, including all of its children, and returns theLayoutResult, representing the layout result, including occupied area, status, i.e.protected booleansetMinMaxWidthBasedOnFixedWidth(MinMaxWidth minMaxWidth)-
Methods inherited from class com.itextpdf.forms.form.renderer.AbstractTextFieldRenderer
adjustNumberOfContentLines, adjustNumberOfContentLines, applyDefaultFieldProperties, approximateFontSize, calculateFittingFontSize, getHeightRowsBased, getLowestChildBottom, updateHtmlColsSizeBasedWidth, updatePdfFont
-
Methods inherited from class com.itextpdf.forms.form.renderer.AbstractFormFieldRenderer
applyAccessibilityProperties, draw, drawChildren, getConformance, getDefaultValue, getLang, getMinMaxWidth, getModelId, isFlatten, isLayoutBasedOnFlatRenderer, isRendererFit, writeAcroFormFieldLangAttribute
-
Methods inherited from class com.itextpdf.layout.renderer.BlockRenderer
applyRotationLayout, applyVerticalAlignment, beginRotationIfApplied, createOverflowRenderer, createRotationTransformInsideOccupiedArea, createSplitRenderer, endRotationIfApplied, getMinMaxWidth, getOccupiedAreaBBox, getResolvedFont
-
Methods inherited from class com.itextpdf.layout.renderer.AbstractRenderer
addAllProperties, addChild, alignChildHorizontally, allowLastYLineRecursiveExtraction, applyAbsolutePosition, applyAction, applyBorderBox, applyBorderBox, applyDestination, applyDestinationsAndAnnotation, applyLinkAnnotation, applyMargins, applyMargins, applyPaddings, applyPaddings, applyRelativePositioningTranslation, beginElementOpacityApplying, beginTransformationIfApplied, calculateAbsolutePdfBBox, calculateBBox, calculateShiftToPositionBBoxOfPointsAt, clipBackgroundArea, clipBackgroundArea, clipBorderArea, createXObject, deleteOwnProperty, deleteProperty, drawBackground, drawBorder, endElementOpacityApplying, endTransformationIfApplied, getBackgroundArea, getBorderAreaBBox, getBorderRadii, getBorders, getChildRenderers, getDefaultProperty, getFirstYLineRecursively, getInnerAreaBBox, getMargins, getModelElement, getOccupiedArea, getOwnProperties, getOwnProperty, getPaddings, getParent, 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, retrieveWidth, setBorders, setParent, setProperty, toString, transformPoints, updateHeight, updateHeightsOnSplit, updateMaxHeight, updateMinHeight, updateWidth
-
-
-
-
Constructor Detail
-
TextAreaRenderer
public TextAreaRenderer(TextArea modelElement)
Creates a newTextAreaRendererinstance.- Parameters:
modelElement- the model element
-
-
Method Detail
-
getCols
public int getCols()
Gets the number of columns.- Returns:
- the cols value of the text area field
-
getRows
public int getRows()
Gets the number of rows.- Returns:
- the rows value of the text area field
-
getLastYLineRecursively
protected java.lang.Float getLastYLineRecursively()
- Overrides:
getLastYLineRecursivelyin classAbstractRenderer
-
getNextRenderer
public IRenderer getNextRenderer()
Gets a new instance of this class to be used as a next renderer, after this renderer is used, ifIRenderer.layout(LayoutContext)is called more than once.- Returns:
- new renderer instance
-
layout
public LayoutResult layout(LayoutContext layoutContext)
This method simulates positioning of the renderer, including all of its children, and returns theLayoutResult, representing the layout result, including occupied area, status, i.e. if there was enough place to fit the renderer subtree, etc.LayoutResultcan be extended to return custom layout results for custom elements, e.g.TextRendererusesTextLayoutResultas its result. This method can be called standalone to learn how much area the renderer subtree needs, or can be called beforeIRenderer.draw(DrawContext), to prepare the renderer to be flushed to the output stream.- Specified by:
layoutin interfaceIRenderer- Overrides:
layoutin classAbstractFormFieldRenderer- Parameters:
layoutContext- the description of layout area and any other additional information- Returns:
- result of the layout process
-
getProperty
public <T1> T1 getProperty(int key)
Gets the property from this entity. Compared toIPropertyContainer.getOwnProperty(int), this method can check parent's properties, styles, etc, depending on the origin of the instance- Specified by:
getPropertyin interfaceIPropertyContainer- Overrides:
getPropertyin classAbstractRenderer- Type Parameters:
T1- the return type associated with the property- Parameters:
key- the property to be retrieved- Returns:
- the value of the given property.
nullwill be returned if the property value was not found
-
adjustFieldLayout
protected void adjustFieldLayout(LayoutContext layoutContext)
Adjusts the field layout.- Specified by:
adjustFieldLayoutin classAbstractFormFieldRenderer- Parameters:
layoutContext- layout context
-
createFlatRenderer
protected IRenderer createFlatRenderer()
Creates the flat renderer instance.- Specified by:
createFlatRendererin classAbstractFormFieldRenderer- Returns:
- the renderer instance.
-
applyAcroField
protected void applyAcroField(DrawContext drawContext)
Applies the AcroField widget.- Specified by:
applyAcroFieldin classAbstractFormFieldRenderer- Parameters:
drawContext- the draw context
-
setMinMaxWidthBasedOnFixedWidth
protected boolean setMinMaxWidthBasedOnFixedWidth(MinMaxWidth minMaxWidth)
- Overrides:
setMinMaxWidthBasedOnFixedWidthin classAbstractRenderer
-
createParagraphRenderer
IRenderer createParagraphRenderer(java.lang.String defaultValue)
Description copied from class:AbstractTextFieldRendererCreates a paragraph renderer.- Overrides:
createParagraphRendererin classAbstractTextFieldRenderer- Parameters:
defaultValue- the default value- Returns:
- the renderer
-
cropContentLines
private void cropContentLines(java.util.List<LineRenderer> lines, Rectangle bBox)
-
approximateFontSizeToFitMultiLine
private void approximateFontSizeToFitMultiLine(LayoutContext layoutContext)
-
-