Class TextProcessor


  • public class TextProcessor
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      TextProcessor()
      Constructor
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addLabel​(java.lang.String label, java.awt.Font font, java.awt.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 java.util.ArrayList textTags
    • Constructor Detail

      • TextProcessor

        public TextProcessor()
        Constructor
    • Method Detail

      • addLabel

        public void addLabel​(java.lang.String label,
                             java.awt.Font font,
                             java.awt.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