Class ListItemRenderer

All Implemented Interfaces:
IPropertyContainer, IRenderer

public class ListItemRenderer extends DivRenderer
  • Field Details

    • symbolRenderer

      protected IRenderer symbolRenderer
    • symbolAreaWidth

      protected float symbolAreaWidth
  • Constructor Details

    • ListItemRenderer

      public ListItemRenderer (ListItem modelElement)
      Creates a ListItemRenderer from its corresponding layout object.
      Parameters:
      modelElement - the ListItem which this object should manage
  • Method Details

    • addSymbolRenderer

      public void addSymbolRenderer (IRenderer symbolRenderer, float symbolAreaWidth)
    • layout

      public LayoutResult layout (LayoutContext layoutContext)
      Description copied from class: BlockRenderer
      This method simulates positioning of the renderer, including all of its children, and returns the LayoutResult, representing the layout result, including occupied area, status, i.e. if there was enough place to fit the renderer subtree, etc. LayoutResult can be extended to return custom layout results for custom elements, e.g. TextRenderer uses TextLayoutResult as its result. This method can be called standalone to learn how much area the renderer subtree needs, or can be called before IRenderer.draw(DrawContext), to prepare the renderer to be flushed to the output stream.
      Specified by:
      layout in interface IRenderer
      Overrides:
      layout in class BlockRenderer
      Parameters:
      layoutContext - the description of layout area and any other additional information
      Returns:
      result of the layout process
    • draw

      public void draw (DrawContext drawContext)
      Description copied from class: AbstractRenderer
      Flushes the renderer subtree contents, i.e. draws itself on canvas, adds necessary objects to the PdfDocument etc.
      Specified by:
      draw in interface IRenderer
      Overrides:
      draw in class BlockRenderer
      Parameters:
      drawContext - contains the PdfDocument to which the renderer subtree if flushed, the PdfCanvas on which the renderer subtree is drawn and other additional parameters needed to perform drawing
    • getNextRenderer

      public IRenderer getNextRenderer()
      Description copied from class: DivRenderer
      Gets a new instance of this class to be used as a next renderer, after this renderer is used, if BlockRenderer.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 DivRenderer, one should override this method: otherwise the default method will be used and thus the default rather than the custom renderer will be created.

      Specified by:
      getNextRenderer in interface IRenderer
      Overrides:
      getNextRenderer in class DivRenderer
      Returns:
      new renderer instance
    • createSplitRenderer

      protected AbstractRenderer createSplitRenderer (int layoutResult)
      Description copied from class: BlockRenderer
      Creates a split renderer.
      Overrides:
      createSplitRenderer in class BlockRenderer
      Parameters:
      layoutResult - the result of content layouting
      Returns:
      a new AbstractRenderer instance
    • createOverflowRenderer

      protected AbstractRenderer createOverflowRenderer (int layoutResult)
      Description copied from class: BlockRenderer
      Creates an overflow renderer.
      Overrides:
      createOverflowRenderer in class BlockRenderer
      Parameters:
      layoutResult - the result of content layouting
      Returns:
      a new AbstractRenderer instance