Class TextProcessor

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

public class TextProcessor extends Object
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private float
     
    private ArrayList
     
    private float
     
    private float
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructor
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addLabel(String label, Font font, FontRenderContext fontRenderContext)
     
    float
     
    getTextTag(int index)
     
    float
     
    float
    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
    Returns the number of labels

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • widestLabel

      private float widestLabel
    • tallestLabel

      private float tallestLabel
    • totalLabelWidths

      private float totalLabelWidths
    • textTags

      private ArrayList textTags
  • Constructor Details

    • TextProcessor

      public TextProcessor()
      Constructor
  • Method Details

    • 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