Class TextFragment

  • All Implemented Interfaces:
    java.io.Serializable

    public class TextFragment
    extends java.lang.Object
    implements java.io.Serializable
    A text item, with an associated font, that fits on a single line (see TextLine). Instances of the class are immutable.
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private float baselineOffset
      The baseline offset (can be used to simulate subscripts and superscripts).
      static java.awt.Font DEFAULT_FONT
      The default font.
      static java.awt.Paint DEFAULT_PAINT
      The default text color.
      private java.awt.Font font
      The font.
      private java.awt.Paint paint
      The text color.
      private static long serialVersionUID
      For serialization.
      private java.lang.String text
      The text.
    • Constructor Summary

      Constructors 
      Constructor Description
      TextFragment​(java.lang.String text)
      Creates a new text fragment.
      TextFragment​(java.lang.String text, java.awt.Font font)
      Creates a new text fragment.
      TextFragment​(java.lang.String text, java.awt.Font font, java.awt.Paint paint)
      Creates a new text fragment.
      TextFragment​(java.lang.String text, java.awt.Font font, java.awt.Paint paint, float baselineOffset)
      Creates a new text fragment.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      float calculateBaselineOffset​(java.awt.Graphics2D g2, TextAnchor anchor)
      Calculates the vertical offset between the baseline and the specified text anchor.
      Size2D calculateDimensions​(java.awt.Graphics2D g2)
      Calculates the dimensions of the text fragment.
      void draw​(java.awt.Graphics2D g2, float anchorX, float anchorY, TextAnchor anchor, float rotateX, float rotateY, double angle)
      Draws the text fragment.
      boolean equals​(java.lang.Object obj)
      Tests this instance for equality with an arbitrary object.
      float getBaselineOffset()
      Returns the baseline offset.
      java.awt.Font getFont()
      Returns the font.
      java.awt.Paint getPaint()
      Returns the text paint.
      java.lang.String getText()
      Returns the text.
      int hashCode()
      Returns a hash code for this object.
      private void readObject​(java.io.ObjectInputStream stream)
      Provides serialization support.
      private void writeObject​(java.io.ObjectOutputStream stream)
      Provides serialization support.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        For serialization.
        See Also:
        Constant Field Values
      • DEFAULT_FONT

        public static final java.awt.Font DEFAULT_FONT
        The default font.
      • DEFAULT_PAINT

        public static final java.awt.Paint DEFAULT_PAINT
        The default text color.
      • text

        private java.lang.String text
        The text.
      • font

        private java.awt.Font font
        The font.
      • paint

        private transient java.awt.Paint paint
        The text color.
      • baselineOffset

        private float baselineOffset
        The baseline offset (can be used to simulate subscripts and superscripts).
    • Constructor Detail

      • TextFragment

        public TextFragment​(java.lang.String text)
        Creates a new text fragment.
        Parameters:
        text - the text (null not permitted).
      • TextFragment

        public TextFragment​(java.lang.String text,
                            java.awt.Font font)
        Creates a new text fragment.
        Parameters:
        text - the text (null not permitted).
        font - the font (null not permitted).
      • TextFragment

        public TextFragment​(java.lang.String text,
                            java.awt.Font font,
                            java.awt.Paint paint)
        Creates a new text fragment.
        Parameters:
        text - the text (null not permitted).
        font - the font (null not permitted).
        paint - the text color (null not permitted).
      • TextFragment

        public TextFragment​(java.lang.String text,
                            java.awt.Font font,
                            java.awt.Paint paint,
                            float baselineOffset)
        Creates a new text fragment.
        Parameters:
        text - the text (null not permitted).
        font - the font (null not permitted).
        paint - the text color (null not permitted).
        baselineOffset - the baseline offset.
    • Method Detail

      • getText

        public java.lang.String getText()
        Returns the text.
        Returns:
        The text (possibly null).
      • getFont

        public java.awt.Font getFont()
        Returns the font.
        Returns:
        The font (never null).
      • getPaint

        public java.awt.Paint getPaint()
        Returns the text paint.
        Returns:
        The text paint (never null).
      • getBaselineOffset

        public float getBaselineOffset()
        Returns the baseline offset.
        Returns:
        The baseline offset.
      • draw

        public void draw​(java.awt.Graphics2D g2,
                         float anchorX,
                         float anchorY,
                         TextAnchor anchor,
                         float rotateX,
                         float rotateY,
                         double angle)
        Draws the text fragment.
        Parameters:
        g2 - the graphics device.
        anchorX - the x-coordinate of the anchor point.
        anchorY - the y-coordinate of the anchor point.
        anchor - the location of the text that is aligned to the anchor point.
        rotateX - the x-coordinate of the rotation point.
        rotateY - the y-coordinate of the rotation point.
        angle - the angle.
      • calculateDimensions

        public Size2D calculateDimensions​(java.awt.Graphics2D g2)
        Calculates the dimensions of the text fragment.
        Parameters:
        g2 - the graphics device.
        Returns:
        The width and height of the text.
      • calculateBaselineOffset

        public float calculateBaselineOffset​(java.awt.Graphics2D g2,
                                             TextAnchor anchor)
        Calculates the vertical offset between the baseline and the specified text anchor.
        Parameters:
        g2 - the graphics device.
        anchor - the anchor.
        Returns:
        the offset.
      • equals

        public boolean equals​(java.lang.Object obj)
        Tests this instance for equality with an arbitrary object.
        Overrides:
        equals in class java.lang.Object
        Parameters:
        obj - the object to test against (null permitted).
        Returns:
        A boolean.
      • hashCode

        public int hashCode()
        Returns a hash code for this object.
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        A hash code.
      • writeObject

        private void writeObject​(java.io.ObjectOutputStream stream)
                          throws java.io.IOException
        Provides serialization support.
        Parameters:
        stream - the output stream.
        Throws:
        java.io.IOException - if there is an I/O error.
      • readObject

        private void readObject​(java.io.ObjectInputStream stream)
                         throws java.io.IOException,
                                java.lang.ClassNotFoundException
        Provides serialization support.
        Parameters:
        stream - the input stream.
        Throws:
        java.io.IOException - if there is an I/O error.
        java.lang.ClassNotFoundException - if there is a classpath problem.