org.jCharts.chartData.processors

## Class TextProcessor

- java.lang.Object
- - org.jCharts.chartData.processors.TextProcessor

-     public class TextProcessor
      extends Object

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private float` | `tallestLabel`
    `private ArrayList` | `textTags`
    `private float` | `totalLabelWidths`
    `private float` | `widestLabel`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TextProcessor()` Constructor

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addLabel(String label, Font font, FontRenderContext fontRenderContext)`
    `float` | `getTallestLabel()`
    `TextTag` | `getTextTag(int index)`
    `float` | `getTotalLabelWidths()`

    `float`

    `getWidestLabel()`
    Calculates the width and height needed by the passed String when rendered // * @param iDataSeries / * @param font // * @param fontRenderContext public void processLabels( IDataSeries iDataSeries) { //LOOP for( int i = 0; i < iDataSeries.getNumberOfXAxisLabels(); i++ ) { this.axisLabelProcessor.processLabel( iDataSeries.getXAxisLabel( i ), axisLabelFont, fontRenderContext ); } TextLayout textLayout = new TextLayout( label, font, fontRenderContext ); //---WIDTH this.labelWidths[ counter ] = textLayout.getAdvance(); this.widestLabel = Math.max( this.labelWidths[ counter ], this.widestLabel ); this.totalLabelWidths += this.labelWidths[ counter ]; //---HEIGHT this.labelHeights[ counter ] = textLayout.getAscent() + textLayout.getDescent(); this.tallestLabel = Math.max( this.labelHeights[ counter ], this.tallestLabel ); //---need this to offset font rendering, as rendering is at the baseline not bottom or top, this.fontDescent = textLayout.getDescent(); this.counter++; } /******************************************************************************************

    `int` | `size()` Returns the number of labels

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### widestLabel

          private float widestLabel

    - #### tallestLabel

          private float tallestLabel

    - #### totalLabelWidths

          private float totalLabelWidths

    - #### textTags

          private ArrayList textTags

  - ### Constructor Detail

    - #### TextProcessor

          public TextProcessor()

      Constructor

  - ### Method Detail

    - #### addLabel

          public void addLabel(String label,
                               Font font,
                               FontRenderContext fontRenderContext)

      Parameters:
        `label` -
        `font` -
        `fontRenderContext` -

    - #### size

          public int size()

      Returns the number of labels
      Returns:
        int

    - #### getWidestLabel

          public float getWidestLabel()

      Calculates the width and height needed by the passed String when rendered // * @param iDataSeries / * @param font // * @param fontRenderContext public void processLabels( IDataSeries iDataSeries) { //LOOP for( int i = 0; i < iDataSeries.getNumberOfXAxisLabels(); i++ ) { this.axisLabelProcessor.processLabel( iDataSeries.getXAxisLabel( i ), axisLabelFont, fontRenderContext ); } TextLayout textLayout = new TextLayout( label, font, fontRenderContext ); //---WIDTH this.labelWidths[ counter ] = textLayout.getAdvance(); this.widestLabel = Math.max( this.labelWidths[ counter ], this.widestLabel ); this.totalLabelWidths += this.labelWidths[ counter ]; //---HEIGHT this.labelHeights[ counter ] = textLayout.getAscent() + textLayout.getDescent(); this.tallestLabel = Math.max( this.labelHeights[ counter ], this.tallestLabel ); //---need this to offset font rendering, as rendering is at the baseline not bottom or top, this.fontDescent = textLayout.getDescent(); this.counter++; } /******************************************************************************************

    - #### getTallestLabel

          public float getTallestLabel()

    - #### getTotalLabelWidths

          public float getTotalLabelWidths()

    - #### getTextTag

          public TextTag getTextTag(int index)

      Parameters:
        `index` -
      Returns:
        TextTag