Class Span

All Implemented Interfaces:
Serializable, Cloneable

public class Span extends Area
The span-reference-area. This is a block-area with 0 border and padding that is stacked within the main-reference-area This object holds one or more normal-flow-reference-area children based on the column-count trait in effect for this span. See fo:region-body definition in the XSL Rec for more information.
See Also:
  • Constructor Details

    • Span

      public Span(int colCount, int colGap, int ipd)
      Create a span area with the number of columns for this span area.
      Parameters:
      colCount - the number of columns in the span
      colGap - the column gap between each column
      ipd - the total ipd of the span
  • Method Details

    • getColumnCount

      public int getColumnCount()
      Get the column count for this span area.
      Returns:
      the number of columns defined for this span area
    • getColumnGap

      public int getColumnGap()
      Get the column gap for this span area.
      Returns:
      the column gap for this span area
    • getColumnWidth

      public int getColumnWidth()
      Get the width of a single column within this Span
      Returns:
      the width of a single column
    • getHeight

      public int getHeight()
      Get the height of this span area.
      Returns:
      the height of this span area
    • getNormalFlow

      public NormalFlow getNormalFlow(int colRequested)
      Get the normal flow area for a particular column.
      Parameters:
      colRequested - the zero-based column number of the flow
      Returns:
      the flow area for the requested column
    • getCurrentFlow

      public NormalFlow getCurrentFlow()
      Get the NormalFlow area currently being processed
      Returns:
      the current NormalFlow
    • getCurrentFlowIndex

      public int getCurrentFlowIndex()
      Returns:
      the index of the current normal flow
    • moveToNextFlow

      public NormalFlow moveToNextFlow()
      Indicate to the Span that the next column is being processed.
      Returns:
      the new NormalFlow (in the next column)
    • hasMoreFlows

      public boolean hasMoreFlows()
      Indicates if the Span has unprocessed flows.
      Returns:
      true if Span can increment to the next flow, false otherwise.
    • notifyFlowsFinished

      public void notifyFlowsFinished()
      Called to notify the span that all its flows have been fully generated so it can update its own BPD extent.
    • isEmpty

      public boolean isEmpty()
      Indicates whether any child areas have been added to this span area. This is achieved by looping through each flow.
      Returns:
      true if no child areas have been added yet.
    • setWritingModeTraits

      public void setWritingModeTraits(WritingModeTraitsGetter wmtg)
      Sets the writing mode traits for the main reference area of this span area.
      Overrides:
      setWritingModeTraits in class Area
      Parameters:
      wmtg - a WM traits getter
    • toString

      public String toString()
      Overrides:
      toString in class Area
      Returns:
      ipd and bpd of area