Class Font

  • All Implemented Interfaces:
    Comparable

    public class Font
    extends Object
    implements 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
      static int BOLD
      this is a possible style.
      static int BOLDITALIC
      this is a possible style.
      static int COURIER
      a possible value of a font family.
      static int DEFAULTSIZE
      the value of the default size.
      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.
      static int STRIKETHRU
      this is a possible 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, 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, Color color)
      Constructs a 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,
                    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,
                    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

      • getFamilyIndex

        public static int getFamilyIndex​(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
      • getFontStyleFromName

        public static int getFontStyleFromName​(String fontName)
        Returns the font-style, if the font is already styled.
         For example:
         font: Helvetica - style: normal
         font: Helvetica-Bold - style: bold
         
        Parameters:
        fontName - the name of the Font
        Returns:
        the styles of an already styled font.
      • getStyleValue

        public static int getStyleValue​(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
      • compareTo

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

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

        public void setFamily​(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.
      • getFamilyname

        public String getFamilyname()
        Gets the familyname as a String.
        Returns:
        the familyname
      • getSize

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

        public void setSize​(float size)
        Sets the size.
        Parameters:
        size - The new size of the font.
      • 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
      • getCalculatedLeading

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

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

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

        public void setStyle​(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.
      • 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
      • getCombinedStyle

        public int getCombinedStyle()
        Returns the combined style of the font with the base font.
      • getBaseFontStyle

        public int getBaseFontStyle()
        Return the style of the BaseFont based on it's name.
        Returns:
        Font.NORMAL if no style can be detected from the font name.
      • isBold

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

        public boolean isItalic()
        checks if this font is italic.
        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
      • getColor

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

        public void setColor​(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
      • 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
      • 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