Package com.itextpdf.forms.form.renderer
Class ButtonRenderer
- java.lang.Object
-
- All Implemented Interfaces:
IPropertyContainer,IRenderer
public class ButtonRenderer extends AbstractOneLineTextFieldRenderer
TheAbstractTextFieldRendererimplementation for buttons.
-
-
Field Summary
Fields Modifier and Type Field Description private static floatDEFAULT_Y_OFFSETDefault padding Y offset for an input button.private booleanisSplitIndicates if the one line caption was split.private static floatRELATIVE_PADDING_FOR_SMALL_SIZESRelative value is quite big in order to preserve visible padding on small field sizes.-
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 ButtonRenderer(Button modelElement)Creates a newButtonRendererinstance.
-
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.protected IRenderercreateFlatRenderer()Creates the flat renderer instance.java.lang.StringgetDefaultValue()Gets the default value of the form field.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.protected booleanisLayoutBasedOnFlatRenderer()Determines, whether the layout is based in the renderer itself or flat renderer.protected booleanisRendererFit(float availableWidth, float availableHeight)Checks if the renderer fits a certain width and height.(package private) voidsetContentHeight(IRenderer flatRenderer, float height)Sets the content height.-
Methods inherited from class com.itextpdf.forms.form.renderer.AbstractOneLineTextFieldRenderer
cropContentLines
-
Methods inherited from class com.itextpdf.forms.form.renderer.AbstractTextFieldRenderer
adjustNumberOfContentLines, adjustNumberOfContentLines, applyDefaultFieldProperties, approximateFontSize, calculateFittingFontSize, createParagraphRenderer, getHeightRowsBased, getLowestChildBottom, updateHtmlColsSizeBasedWidth, updatePdfFont
-
Methods inherited from class com.itextpdf.forms.form.renderer.AbstractFormFieldRenderer
applyAccessibilityProperties, draw, drawChildren, getConformance, getLang, getMinMaxWidth, getModelId, isFlatten, layout, 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, 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, setMinMaxWidthBasedOnFixedWidth, setParent, setProperty, toString, transformPoints, updateHeight, updateHeightsOnSplit, updateMaxHeight, updateMinHeight, updateWidth
-
-
-
-
Field Detail
-
DEFAULT_Y_OFFSET
private static final float DEFAULT_Y_OFFSET
Default padding Y offset for an input button.- See Also:
- Constant Field Values
-
RELATIVE_PADDING_FOR_SMALL_SIZES
private static final float RELATIVE_PADDING_FOR_SMALL_SIZES
Relative value is quite big in order to preserve visible padding on small field sizes. This constant is taken arbitrary, based on visual similarity to Acrobat behaviour.- See Also:
- Constant Field Values
-
isSplit
private boolean isSplit
Indicates if the one line caption was split.
-
-
Constructor Detail
-
ButtonRenderer
public ButtonRenderer(Button modelElement)
Creates a newButtonRendererinstance.- Parameters:
modelElement- the model element
-
-
Method Detail
-
adjustFieldLayout
protected void adjustFieldLayout(LayoutContext layoutContext)
Adjusts the field layout.- Specified by:
adjustFieldLayoutin classAbstractFormFieldRenderer- Parameters:
layoutContext- layout context
-
isLayoutBasedOnFlatRenderer
protected boolean isLayoutBasedOnFlatRenderer()
Determines, whether the layout is based in the renderer itself or flat renderer.- Overrides:
isLayoutBasedOnFlatRendererin classAbstractFormFieldRenderer- Returns:
trueif layout is based on flat renderer, false otherwise.
-
getLastYLineRecursively
protected java.lang.Float getLastYLineRecursively()
- Overrides:
getLastYLineRecursivelyin classAbstractRenderer- Returns:
-
createFlatRenderer
protected IRenderer createFlatRenderer()
Creates the flat renderer instance.- Specified by:
createFlatRendererin classAbstractFormFieldRenderer- Returns:
- the renderer instance.
-
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
-
getDefaultValue
public java.lang.String getDefaultValue()
Gets the default value of the form field.- Overrides:
getDefaultValuein classAbstractFormFieldRenderer- Returns:
- the default value of the form field.
-
isRendererFit
protected boolean isRendererFit(float availableWidth, float availableHeight)Checks if the renderer fits a certain width and height.- Overrides:
isRendererFitin classAbstractFormFieldRenderer- Parameters:
availableWidth- the available widthavailableHeight- the available height- Returns:
- true, if the renderer fits.
-
applyAcroField
protected void applyAcroField(DrawContext drawContext)
Applies the AcroField widget.- Specified by:
applyAcroFieldin classAbstractFormFieldRenderer- Parameters:
drawContext- the draw context
-
setContentHeight
void setContentHeight(IRenderer flatRenderer, float height)
Sets the content height.- Overrides:
setContentHeightin classAbstractOneLineTextFieldRenderer- Parameters:
flatRenderer- the flat rendererheight- the height
-
-