## com.lowagie.text
Class Font

    java.lang.Object
      com.lowagie.text.Font

All Implemented Interfaces:
  java.lang.Comparable

Direct Known Subclasses:
  RtfFont, RtfFont

    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
`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
`Font()` Constructs 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.
`Font(Font other)` Copy constructor of 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.

Method Summary
`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` .
`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.
`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(java.awt.Color color)` Sets the color.
`void` `setColor(int red, int green, int blue)` 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

### NORMAL

    public static final int NORMAL

  this is a possible style.

  See Also:
    Constant Field Values

### BOLD

    public static final int BOLD

  this is a possible style.

  See Also:
    Constant Field Values

### ITALIC

    public static final int ITALIC

  this is a possible style.

  See Also:
    Constant Field Values

### UNDERLINE

    public static final int UNDERLINE

  this is a possible style.

  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

### 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

### 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`