Package org.eclipse.swt.graphics

## Class Font

- java.lang.Object
- - org.eclipse.swt.graphics.Resource
  - - org.eclipse.swt.graphics.Font

    public class Font
    extends Resource

Instances of this class manage resources that define how text looks when it is displayed.

Since:
  1.0
See Also:
  `FontData`

### Constructor Summary

Constructors
`Font​(Device device, java.lang.String name, int height, int style)` Constructs a new font given a device, a font name, the height of the desired font in points, and a font style.
`Font​(Device device, FontData fontData)` Constructs a new font given a device and font data which describes the desired font's appearance.
`Font​(Device device, FontData[] fontData)` Constructs a new font given a device and an array of font data which describes the desired font's appearance.

### Method Summary

All Methods Instance Methods Concrete Methods
`boolean` `equals​(java.lang.Object object)`
`FontData[]` `getFontData()` Returns an array of `FontData`s representing the receiver.
`int` `hashCode()`
`java.lang.String` `toString()` Returns a string containing a concise, human-readable description of the receiver.

### Methods inherited from class org.eclipse.swt.graphics.Resource

`dispose, getDevice, isDisposed`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### Font

    public Font​(Device device,
                FontData fontData)

Constructs a new font given a device and font data which describes the desired font's appearance.

You must dispose the font when it is no longer required.

Parameters:
  `device` - the device to create the font on
  `fontData` - the FontData that describes the desired font (must not be null)
Throws:
  `java.lang.IllegalArgumentException` -
  - ERROR_NULL_ARGUMENT - if device is null and there is no current device
  - ERROR_NULL_ARGUMENT - if the fontData argument is null
  `SWTError` -
  - ERROR_NO_HANDLES - if a font could not be created from the given font data
Since:
  1.3

#### Font

    public Font​(Device device,
                FontData[] fontData)

Constructs a new font given a device and an array of font data which describes the desired font's appearance.

You must dispose the font when it is no longer required.

Parameters:
  `device` - the device to create the font on
  `fontData` - the array of FontData that describes the desired font (must not be null)
Throws:
  `java.lang.IllegalArgumentException` -
  - ERROR_NULL_ARGUMENT - if device is null and there is no current device
  - ERROR_NULL_ARGUMENT - if the fontData argument is null
  - ERROR_INVALID_ARGUMENT - if the length of fontData is zero
  - ERROR_NULL_ARGUMENT - if any font data in the array is null
  `SWTError` -
  - ERROR_NO_HANDLES - if a font could not be created from the given font data
Since:
  1.3

#### Font

    public Font​(Device device,
                java.lang.String name,
                int height,
                int style)

Constructs a new font given a device, a font name, the height of the desired font in points, and a font style.

You must dispose the font when it is no longer required.

Parameters:
  `device` - the device to create the font on
  `name` - the name of the font (must not be null)
  `height` - the font height in points
  `style` - a bit or combination of NORMAL, BOLD, ITALIC
Throws:
  `java.lang.IllegalArgumentException` -
  - ERROR_NULL_ARGUMENT - if device is null and there is no current device
  - ERROR_NULL_ARGUMENT - if the name argument is null
  - ERROR_INVALID_ARGUMENT - if the height is negative
  `SWTError` -
  - ERROR_NO_HANDLES - if a font could not be created from the given arguments

### Method Detail

#### getFontData

    public FontData[] getFontData()

Returns an array of `FontData`s representing the receiver.

Returns:
  an array of font data objects describing the receiver
Throws:
  `SWTException` -
  - ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed

#### equals

    public boolean equals​(java.lang.Object object)

Overrides:
  `equals` in class `java.lang.Object`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `java.lang.Object`

#### toString

    public java.lang.String toString()

Returns a string containing a concise, human-readable description of the receiver.

Overrides:
  `toString` in class `java.lang.Object`
Returns:
  a string representation of the receiver