Class BlockElementIElement>

Type Parameters:
T - the type of the implementation
All Implemented Interfaces:
IAbstractElement, IBlockElement, IElement, IPropertyContainer, IAccessibleElement
Direct Known Subclasses:
Cell, Div, LineSeparator, List, Paragraph, Table

public abstract class BlockElementIElement> extends AbstractElement implements IAccessibleElement, IBlockElement
A BlockElement will try to take up as much horizontal space as available to it on the canvas or page. The concept is comparable to the block element in HTML. Also like in HTML, the visual representation of the object can be delimited by padding, a border, and/or a margin.
  • Constructor Details

    • BlockElement

      protected BlockElement()
      Creates a BlockElement.
  • Method Details

    • getDefaultProperty

      public  T1 getDefaultProperty (int property)
      Description copied from interface: IPropertyContainer
      Gets the default property from this entity.
      Specified by:
      getDefaultProperty in interface IPropertyContainer
      Overrides:
      getDefaultProperty in class ElementPropertyContainer<T extends IElement>
      Type Parameters:
      T1 - the return type associated with the property
      Parameters:
      property - the property to be retrieved
      Returns:
      the default property value. If the default property is not defined, null will be returned
    • getMarginLeft

      public UnitValue getMarginLeft()
      Gets the current left margin width of the element.
      Returns:
      the left margin width, as a UnitValue object
    • setMarginLeft

      public T setMarginLeft (float value)
      Sets the left margin width of the element.
      Parameters:
      value - the new left margin width
      Returns:
      this element
    • getMarginRight

      public UnitValue getMarginRight()
      Gets the current right margin width of the element.
      Returns:
      the right margin width, as a UnitValue object
    • setMarginRight

      public T setMarginRight (float value)
      Sets the right margin width of the element.
      Parameters:
      value - the new right margin width
      Returns:
      this element
    • getMarginTop

      public UnitValue getMarginTop()
      Gets the current top margin width of the element.
      Returns:
      the top margin width, as a UnitValue object
    • setMarginTop

      public T setMarginTop (float value)
      Sets the top margin width of the element.
      Parameters:
      value - the new top margin width
      Returns:
      this element
    • getMarginBottom

      public UnitValue getMarginBottom()
      Gets the current bottom margin width of the element.
      Returns:
      the bottom margin width, as a UnitValue object
    • setMarginBottom

      public T setMarginBottom (float value)
      Sets the bottom margin width of the element.
      Parameters:
      value - the new bottom margin width
      Returns:
      this element
    • setMargin

      public T setMargin (float commonMargin)
      Sets all margins around the element to the same width.
      Parameters:
      commonMargin - the new margin width
      Returns:
      this element
    • setMargins

      public T setMargins (float marginTop, float marginRight, float marginBottom, float marginLeft)
      Sets the margins around the element to a series of new widths.
      Parameters:
      marginTop - the new margin top width
      marginRight - the new margin right width
      marginBottom - the new margin bottom width
      marginLeft - the new margin left width
      Returns:
      this element
    • getPaddingLeft

      public UnitValue getPaddingLeft()
      Gets the current left padding width of the element.
      Returns:
      the left padding width, as a UnitValue object
    • setPaddingLeft

      public T setPaddingLeft (float value)
      Sets the left padding width of the element.
      Parameters:
      value - the new left padding width
      Returns:
      this element
    • getPaddingRight

      public UnitValue getPaddingRight()
      Gets the current right padding width of the element.
      Returns:
      the right padding width, as a UnitValue object
    • setPaddingRight

      public T setPaddingRight (float value)
      Sets the right padding width of the element.
      Parameters:
      value - the new right padding width
      Returns:
      this element
    • getPaddingTop

      public UnitValue getPaddingTop()
      Gets the current top padding width of the element.
      Returns:
      the top padding width, as a UnitValue object
    • setPaddingTop

      public T setPaddingTop (float value)
      Sets the top padding width of the element.
      Parameters:
      value - the new top padding width
      Returns:
      this element
    • getPaddingBottom

      public UnitValue getPaddingBottom()
      Gets the current bottom padding width of the element.
      Returns:
      the bottom padding width, as a UnitValue object
    • setPaddingBottom

      public T setPaddingBottom (float value)
      Sets the bottom padding width of the element.
      Parameters:
      value - the new bottom padding width
      Returns:
      this element
    • setPadding

      public T setPadding (float commonPadding)
      Sets all paddings around the element to the same width.
      Parameters:
      commonPadding - the new padding width
      Returns:
      this element
    • setPaddings

      public T setPaddings (float paddingTop, float paddingRight, float paddingBottom, float paddingLeft)
      Sets the paddings around the element to a series of new widths.
      Parameters:
      paddingTop - the new padding top width
      paddingRight - the new padding right width
      paddingBottom - the new padding bottom width
      paddingLeft - the new padding left width
      Returns:
      this element
    • setVerticalAlignment

      public T setVerticalAlignment (VerticalAlignment verticalAlignment)
      Sets the vertical alignment of the element.
      Parameters:
      verticalAlignment - the vertical alignment setting
      Returns:
      this element
    • setSpacingRatio

      public T setSpacingRatio (float ratio)
      Sets a ratio which determines in which proportion will word spacing and character spacing be applied when horizontal alignment is justified.
      Parameters:
      ratio - the ratio coefficient. It must be between 0 and 1, inclusive. It means that ratio part of the free space will be compensated by word spacing, and 1-ratio part of the free space will be compensated by character spacing. If ratio is 1, additional character spacing will not be applied. If ratio is 0, additional word spacing will not be applied.
      Returns:
      this element
    • isKeepTogether

      public Boolean isKeepTogether()
      Returns whether the BlockElement should be kept together as much as possible.
      Returns:
      the current value of the Property.KEEP_TOGETHER property
    • setKeepTogether

      public T setKeepTogether (boolean keepTogether)
      Sets whether the BlockElement should be kept together as much as possible.
      Parameters:
      keepTogether - the new value of the Property.KEEP_TOGETHER property
      Returns:
      this element
    • isKeepWithNext

      public Boolean isKeepWithNext()
      Returns whether the end of this BlockElement and the start of the next sibling of this element should be placed in the same area.
      Returns:
      the current value of the Property.KEEP_WITH_NEXT property
    • setKeepWithNext

      public T setKeepWithNext (boolean keepWithNext)
      Sets whether the end of this BlockElement and the start of the next sibling of this element should be placed in the same area. Note that this will only work for high-level elements, i.e. elements added to the RootElement.
      Parameters:
      keepWithNext - the new value of the Property.KEEP_WITH_NEXT property
      Returns:
      this element
    • setRotationAngle

      public T setRotationAngle (float angleInRadians)
      Sets the rotation radAngle.
      Parameters:
      angleInRadians - the new rotation radAngle, as a float, in radians
      Returns:
      this element
    • setRotationAngle

      public T setRotationAngle (double angleInRadians)
      Sets the rotation angle.
      Parameters:
      angleInRadians - the new rotation angle, as a double, in radians
      Returns:
      this element
    • setWidth

      public T setWidth (float width)
      Sets the width property of a block element, measured in points.
      Parameters:
      width - a value measured in points.
      Returns:
      this Element.
    • setWidth

      public T setWidth (UnitValue width)
      Sets the width property of a block element with a UnitValue.
      Parameters:
      width - a UnitValue object
      Returns:
      this Element.
    • getWidth

      public UnitValue getWidth()
      Gets the width property of a block element.
      Returns:
      the width of the element, with a value and a measurement unit.
      See Also:
    • setHeight

      public T setHeight (UnitValue height)
      Sets the height property of a block element with a UnitValue.
      Parameters:
      height - a UnitValue object
      Returns:
      this Element.
    • setHeight

      public T setHeight (float height)
      Sets the height property a block element as a point-value.
      Parameters:
      height - a floating point value for the new height
      Returns:
      the block element itself.
    • getHeight

      public UnitValue getHeight()
      Gets the height property of a block element.
      Returns:
      the height of the element, as a floating point value. Null if the property is not present
    • setMaxHeight

      public T setMaxHeight (float maxHeight)
      Sets the max-height of a block element as point-unit value.
      Parameters:
      maxHeight - a floating point value for the new max-height
      Returns:
      the block element itself
    • setMaxHeight

      public T setMaxHeight (UnitValue maxHeight)
      Sets the max-height property of a block element with a UnitValue.
      Parameters:
      maxHeight - a UnitValue object
      Returns:
      the block element itself
    • setMinHeight

      public T setMinHeight (UnitValue minHeight)
      Sets the min-height property of a block element with a UnitValue.
      Parameters:
      minHeight - a UnitValue object
      Returns:
      the block element itself
    • setMinHeight

      public T setMinHeight (float minHeight)
      Sets the min-height of a block element as point-unit value.
      Parameters:
      minHeight - a floating point value for the new min-height
      Returns:
      the block element itself
    • setMaxWidth

      public T setMaxWidth (UnitValue maxWidth)
      Sets the max-width property of a block element with a UnitValue.
      Parameters:
      maxWidth - a UnitValue object
      Returns:
      the block element itself
    • setMaxWidth

      public T setMaxWidth (float maxWidth)
      Sets the max-width of a block element as point-unit value.
      Parameters:
      maxWidth - a floating point value for the new max-width
      Returns:
      the block element itself
    • setMinWidth

      public T setMinWidth (UnitValue minWidth)
      Sets the min-width property of a block element with a UnitValue.
      Parameters:
      minWidth - a UnitValue object
      Returns:
      the block element itself
    • setMinWidth

      public T setMinWidth (float minWidth)
      Sets the min-width of a block element as point-unit value.
      Parameters:
      minWidth - a floating point value for the new min-width
      Returns:
      the block element itself
    • setNeutralRole

      public T setNeutralRole()
      Give this element a neutral role. See also AccessibilityProperties.setRole(String).
      Returns:
      this Element