Class Font

  • All Implemented Interfaces:
    java.lang.Comparable

    public class Font
    extends java.lang.Object
    implements java.lang.Comparable
    Contains all the specifications of a font: fontfamily, size, style and color.

    Example:

     
     Paragraph p = new Paragraph("This is a paragraph", new
     Font(Font.HELVETICA, 18, Font.BOLDITALIC, new Color(0, 0, 255)) );
     
     
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private BaseFont baseFont
      the external font
      static int BOLD
      this is a possible style.
      static int BOLDITALIC
      this is a possible style.
      private java.awt.Color color
      the value of the color.
      static int COURIER
      a possible value of a font family.
      static int DEFAULTSIZE
      the value of the default size.
      private int family
      the value of the fontfamily.
      static int HELVETICA
      a possible value of a font family.
      static int ITALIC
      this is a possible style.
      static int NORMAL
      this is a possible style.
      private float size
      the value of the fontsize.
      static int STRIKETHRU
      this is a possible style.
      private int style
      the value of the style.
      static int SYMBOL
      a possible value of a font family.
      static int TIMES_ROMAN
      a possible value of a font family.
      static int UNDEFINED
      the value of an undefined attribute.
      static int UNDERLINE
      this is a possible style.
      static int ZAPFDINGBATS
      a possible value of a font family.
    • Constructor Summary

      Constructors 
      Constructor Description
      Font()
      Constructs a Font.
      Font​(int family)
      Constructs a Font.
      Font​(int family, float size)
      Constructs a Font.
      Font​(int family, float size, int style)
      Constructs a Font.
      Font​(int family, float size, int style, java.awt.Color color)
      Constructs a Font.
      Font​(Font other)
      Copy constructor of a Font
      Font​(BaseFont bf)
      Constructs a Font.
      Font​(BaseFont bf, float size)
      Constructs a Font.
      Font​(BaseFont bf, float size, int style)
      Constructs a Font.
      Font​(BaseFont bf, float size, int style, java.awt.Color color)
      Constructs a Font.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.awt.Color color()
      Gets the color of this font.
      int compareTo​(java.lang.Object object)
      Compares this Font with another
      Font difference​(Font font)
      Replaces the attributes that are equal to null with the attributes of a given font.
      int family()
      Gets the family of this font.
      BaseFont getBaseFont()
      Gets the BaseFont inside this object.
      BaseFont getCalculatedBaseFont​(boolean specialEncoding)
      Gets the BaseFont this class represents.
      float getCalculatedSize()
      Gets the size that can be used with the calculated BaseFont .
      int getCalculatedStyle()
      Gets the style that can be used with the calculated BaseFont .
      java.awt.Color getColor()  
      static int getFamilyIndex​(java.lang.String family)
      Translates a String -value of a certain family into the index that is used for this family in this class.
      java.lang.String getFamilyname()
      Gets the familyname as a String.
      float getSize()  
      static int getStyleValue​(java.lang.String style)
      Translates a String -value of a certain style into the index value is used for this style in this class.
      boolean isBold()
      checks if this font is Bold.
      boolean isItalic()
      checks if this font is Bold.
      boolean isStandardFont()
      Checks if the properties of this font are undefined or null.
      boolean isStrikethru()
      checks if the style of this font is STRIKETHRU.
      boolean isUnderlined()
      checks if this font is underlined.
      float leading​(float linespacing)
      Gets the leading that can be used with this font.
      void setColor​(int red, int green, int blue)
      Sets the color.
      void setColor​(java.awt.Color color)
      Sets the color.
      void setFamily​(java.lang.String family)
      Sets the family using a String ("Courier", "Helvetica", "Times New Roman", "Symbol" or "ZapfDingbats").
      void setSize​(float size)
      Sets the size.
      void setStyle​(int style)
      Sets the style.
      void setStyle​(java.lang.String style)
      Sets the style using a String containing one of more of the following values: normal, bold, italic, underline, strike.
      float size()
      Gets the size of this font.
      int style()
      Gets the style of this font.
      • Methods inherited from class java.lang.Object

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

      • COURIER

        public static final int COURIER
        a possible value of a font family.
        See Also:
        Constant Field Values
      • HELVETICA

        public static final int HELVETICA
        a possible value of a font family.
        See Also:
        Constant Field Values
      • TIMES_ROMAN

        public static final int TIMES_ROMAN
        a possible value of a font family.
        See Also:
        Constant Field Values
      • SYMBOL

        public static final int SYMBOL
        a possible value of a font family.
        See Also:
        Constant Field Values
      • ZAPFDINGBATS

        public static final int ZAPFDINGBATS
        a possible value of a font family.
        See Also:
        Constant Field Values
      • STRIKETHRU

        public static final int STRIKETHRU
        this is a possible style.
        See Also:
        Constant Field Values
      • BOLDITALIC

        public static final int BOLDITALIC
        this is a possible style.
        See Also:
        Constant Field Values
      • UNDEFINED

        public static final int UNDEFINED
        the value of an undefined attribute.
        See Also:
        Constant Field Values
      • DEFAULTSIZE

        public static final int DEFAULTSIZE
        the value of the default size.
        See Also:
        Constant Field Values
      • family

        private int family
        the value of the fontfamily.
      • size

        private float size
        the value of the fontsize.
      • style

        private int style
        the value of the style.
      • color

        private java.awt.Color color
        the value of the color.
      • baseFont

        private BaseFont baseFont
        the external font
    • Constructor Detail

      • Font

        public Font​(Font other)
        Copy constructor of a Font
        Parameters:
        other - the font that has to be copied
      • Font

        public Font​(int family,
                    float size,
                    int style,
                    java.awt.Color color)
        Constructs a Font.
        Parameters:
        family - the family to which this font belongs
        size - the size of this font
        style - the style of this font
        color - the Color of this font.
      • Font

        public Font​(BaseFont bf,
                    float size,
                    int style,
                    java.awt.Color color)
        Constructs a Font.
        Parameters:
        bf - the external font
        size - the size of this font
        style - the style of this font
        color - the Color of this font.
      • Font

        public Font​(BaseFont bf,
                    float size,
                    int style)
        Constructs a Font.
        Parameters:
        bf - the external font
        size - the size of this font
        style - the style of this font
      • Font

        public Font​(BaseFont bf,
                    float size)
        Constructs a Font.
        Parameters:
        bf - the external font
        size - the size of this font
      • Font

        public Font​(BaseFont bf)
        Constructs a Font.
        Parameters:
        bf - the external font
      • Font

        public Font​(int family,
                    float size,
                    int style)
        Constructs a Font.
        Parameters:
        family - the family to which this font belongs
        size - the size of this font
        style - the style of this font
      • Font

        public Font​(int family,
                    float size)
        Constructs a Font.
        Parameters:
        family - the family to which this font belongs
        size - the size of this font
      • Font

        public Font​(int family)
        Constructs a Font.
        Parameters:
        family - the family to which this font belongs
      • Font

        public Font()
        Constructs a Font.
    • Method Detail

      • compareTo

        public int compareTo​(java.lang.Object object)
        Compares this Font with another
        Specified by:
        compareTo in interface java.lang.Comparable
        Parameters:
        object - the other Font
        Returns:
        a value
      • setFamily

        public void setFamily​(java.lang.String family)
        Sets the family using a String ("Courier", "Helvetica", "Times New Roman", "Symbol" or "ZapfDingbats").
        Parameters:
        family - A String representing a certain font-family.
      • getFamilyIndex

        public static int getFamilyIndex​(java.lang.String family)
        Translates a String -value of a certain family into the index that is used for this family in this class.
        Parameters:
        family - A String representing a certain font-family
        Returns:
        the corresponding index
      • getFamilyname

        public java.lang.String getFamilyname()
        Gets the familyname as a String.
        Returns:
        the familyname
      • setSize

        public void setSize​(float size)
        Sets the size.
        Parameters:
        size - The new size of the font.
      • setStyle

        public void setStyle​(java.lang.String style)
        Sets the style using a String containing one of more of the following values: normal, bold, italic, underline, strike.
        Parameters:
        style - A String representing a certain style.
      • setStyle

        public void setStyle​(int style)
        Sets the style.
        Parameters:
        style - the style.
      • getStyleValue

        public static int getStyleValue​(java.lang.String style)
        Translates a String -value of a certain style into the index value is used for this style in this class.
        Parameters:
        style - A String
        Returns:
        the corresponding value
      • setColor

        public void setColor​(java.awt.Color color)
        Sets the color.
        Parameters:
        color - the new color of the font
      • setColor

        public void setColor​(int red,
                             int green,
                             int blue)
        Sets the color.
        Parameters:
        red - the red-value of the new color
        green - the green-value of the new color
        blue - the blue-value of the new color
      • leading

        public float leading​(float linespacing)
        Gets the leading that can be used with this font.
        Parameters:
        linespacing - a certain linespacing
        Returns:
        the height of a line
      • isStandardFont

        public boolean isStandardFont()
        Checks if the properties of this font are undefined or null.

        If so, the standard should be used.

        Returns:
        a boolean
      • difference

        public Font difference​(Font font)
        Replaces the attributes that are equal to null with the attributes of a given font.
        Parameters:
        font - the font of a bigger element class
        Returns:
        a Font
      • family

        public int family()
        Gets the family of this font.
        Returns:
        the value of the family
      • size

        public float size()
        Gets the size of this font.
        Returns:
        a size
      • getSize

        public float getSize()
      • style

        public int style()
        Gets the style of this font.
        Returns:
        a size
      • isBold

        public boolean isBold()
        checks if this font is Bold.
        Returns:
        a boolean
      • isItalic

        public boolean isItalic()
        checks if this font is Bold.
        Returns:
        a boolean
      • isUnderlined

        public boolean isUnderlined()
        checks if this font is underlined.
        Returns:
        a boolean
      • isStrikethru

        public boolean isStrikethru()
        checks if the style of this font is STRIKETHRU.
        Returns:
        a boolean
      • color

        public java.awt.Color color()
        Gets the color of this font.
        Returns:
        a color
      • getColor

        public java.awt.Color getColor()
      • getBaseFont

        public BaseFont getBaseFont()
        Gets the BaseFont inside this object.
        Returns:
        the BaseFont
      • getCalculatedBaseFont

        public BaseFont getCalculatedBaseFont​(boolean specialEncoding)
        Gets the BaseFont this class represents. For the built-in fonts a BaseFont is calculated.
        Parameters:
        specialEncoding - true to use the special encoding for Symbol and ZapfDingbats, false to always use Cp1252
        Returns:
        the BaseFont this class represents
      • getCalculatedStyle

        public int getCalculatedStyle()
        Gets the style that can be used with the calculated BaseFont .
        Returns:
        the style that can be used with the calculated BaseFont
      • getCalculatedSize

        public float getCalculatedSize()
        Gets the size that can be used with the calculated BaseFont .
        Returns:
        the size that can be used with the calculated BaseFont