com.lowagie.text

## Class FontFactory

- java.lang.Object
- - com.lowagie.text.FontFactory

    public final class FontFactory
    extends java.lang.Object

If you are using True Type fonts, you can declare the paths of the different ttf- and ttc-files to this static class first and then create fonts in your code using one of the static getFont-method without having to enter a path as parameter.

Author:
  Bruno Lowagie

### Field Summary

Fields
`static java.lang.String` `COURIER` This is a possible value of a base 14 type 1 font
`static java.lang.String` `COURIER_BOLD` This is a possible value of a base 14 type 1 font
`static java.lang.String` `COURIER_BOLDOBLIQUE` This is a possible value of a base 14 type 1 font
`static java.lang.String` `COURIER_OBLIQUE` This is a possible value of a base 14 type 1 font
`static boolean` `defaultEmbedding` This is the default value of the embedded variable.
`static java.lang.String` `defaultEncoding` This is the default encoding to use.
`private static FontFactoryImp` `fontImp`
`static java.lang.String` `HELVETICA` This is a possible value of a base 14 type 1 font
`static java.lang.String` `HELVETICA_BOLD` This is a possible value of a base 14 type 1 font
`static java.lang.String` `HELVETICA_BOLDOBLIQUE` This is a possible value of a base 14 type 1 font
`static java.lang.String` `HELVETICA_OBLIQUE` This is a possible value of a base 14 type 1 font
`static java.lang.String` `SYMBOL` This is a possible value of a base 14 type 1 font
`static java.lang.String` `TIMES` This is a possible value of a base 14 type 1 font
`static java.lang.String` `TIMES_BOLD` This is a possible value of a base 14 type 1 font
`static java.lang.String` `TIMES_BOLDITALIC` This is a possible value of a base 14 type 1 font
`static java.lang.String` `TIMES_ITALIC` This is a possible value of a base 14 type 1 font
`static java.lang.String` `TIMES_ROMAN` This is a possible value of a base 14 type 1 font
`static java.lang.String` `ZAPFDINGBATS` This is a possible value of a base 14 type 1 font

### Constructor Summary

Constructors
`private` `FontFactory()` Creates new FontFactory

### Method Summary

Methods
`static boolean` `contains(java.lang.String fontname)` Gets a set of registered fontnames.
`static Font` `getFont(java.util.Properties attributes)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, float size)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, float size, java.awt.Color color)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, float size, int style)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, float size, int style, java.awt.Color color)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, java.lang.String encoding)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, java.lang.String encoding, boolean embedded)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, java.lang.String encoding, boolean embedded, float size)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, java.lang.String encoding, boolean embedded, float size, int style)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, java.lang.String encoding, boolean embedded, float size, int style, java.awt.Color color)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, java.lang.String encoding, boolean embedded, float size, int style, java.awt.Color color, boolean cached)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, java.lang.String encoding, float size)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, java.lang.String encoding, float size, int style)` Constructs a `Font`-object.
`static Font` `getFont(java.lang.String fontname, java.lang.String encoding, float size, int style, java.awt.Color color)` Constructs a `Font`-object.
`static FontFactoryImp` `getFontImp()` Gets the font factory implementation.
`static java.util.Set` `getRegisteredFamilies()` Gets a set of registered fontnames.
`static java.util.Set` `getRegisteredFonts()` Gets a set of registered fontnames.
`static boolean` `isRegistered(java.lang.String fontname)` Checks if a certain font is registered.
`static void` `register(java.lang.String path)` Register a ttf- or a ttc-file.
`static void` `register(java.lang.String path, java.lang.String alias)` Register a font file and use an alias for the font contained in it.
`static int` `registerDirectories()` Register fonts in some probable directories.
`static int` `registerDirectory(java.lang.String dir)` Register all the fonts in a directory.
`static int` `registerDirectory(java.lang.String dir, boolean scanSubdirectories)` Register all the fonts in a directory and possibly its subdirectories.
`void` `registerFamily(java.lang.String familyName, java.lang.String fullName, java.lang.String path)` Register a font by giving explicitly the font family and name.
`static void` `setFontImp(FontFactoryImp fontImp)` Sets the font factory implementation.

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

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### COURIER

    public static final java.lang.String COURIER

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### COURIER_BOLD

    public static final java.lang.String COURIER_BOLD

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### COURIER_OBLIQUE

    public static final java.lang.String COURIER_OBLIQUE

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### COURIER_BOLDOBLIQUE

    public static final java.lang.String COURIER_BOLDOBLIQUE

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### HELVETICA

    public static final java.lang.String HELVETICA

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### HELVETICA_BOLD

    public static final java.lang.String HELVETICA_BOLD

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### HELVETICA_OBLIQUE

    public static final java.lang.String HELVETICA_OBLIQUE

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### HELVETICA_BOLDOBLIQUE

    public static final java.lang.String HELVETICA_BOLDOBLIQUE

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### SYMBOL

    public static final java.lang.String SYMBOL

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### TIMES

    public static final java.lang.String TIMES

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### TIMES_ROMAN

    public static final java.lang.String TIMES_ROMAN

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### TIMES_BOLD

    public static final java.lang.String TIMES_BOLD

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### TIMES_ITALIC

    public static final java.lang.String TIMES_ITALIC

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### TIMES_BOLDITALIC

    public static final java.lang.String TIMES_BOLDITALIC

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### ZAPFDINGBATS

    public static final java.lang.String ZAPFDINGBATS

This is a possible value of a base 14 type 1 font

See Also:
  Constant Field Values

#### fontImp

    private static FontFactoryImp fontImp

#### defaultEncoding

    public static java.lang.String defaultEncoding

This is the default encoding to use.

#### defaultEmbedding

    public static boolean defaultEmbedding

This is the default value of the embedded variable.

### Constructor Detail

#### FontFactory

    private FontFactory()

Creates new FontFactory

### Method Detail

#### getFont

    public static Font getFont(java.lang.String fontname,
               java.lang.String encoding,
               boolean embedded,
               float size,
               int style,
               java.awt.Color color)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `encoding` - the encoding of the font
  `embedded` - true if the font is to be embedded in the PDF
  `size` - the size of this font
  `style` - the style of this font
  `color` - the `Color` of this font.
Returns:
  the Font constructed based on the parameters

#### getFont

    public static Font getFont(java.lang.String fontname,
               java.lang.String encoding,
               boolean embedded,
               float size,
               int style,
               java.awt.Color color,
               boolean cached)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `encoding` - the encoding of the font
  `embedded` - true if the font is to be embedded in the PDF
  `size` - the size of this font
  `style` - the style of this font
  `color` - the `Color` of this font.
  `cached` - true if the font comes from the cache or is added to the cache if new, false if the font is always created new
Returns:
  the Font constructed based on the parameters

#### getFont

    public static Font getFont(java.util.Properties attributes)

Constructs a `Font`-object.

Parameters:
  `attributes` - the attributes of a `Font` object.
Returns:
  the Font constructed based on the attributes

#### getFont

    public static Font getFont(java.lang.String fontname,
               java.lang.String encoding,
               boolean embedded,
               float size,
               int style)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `encoding` - the encoding of the font
  `embedded` - true if the font is to be embedded in the PDF
  `size` - the size of this font
  `style` - the style of this font
Returns:
  the Font constructed based on the parameters

#### getFont

    public static Font getFont(java.lang.String fontname,
               java.lang.String encoding,
               boolean embedded,
               float size)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `encoding` - the encoding of the font
  `embedded` - true if the font is to be embedded in the PDF
  `size` - the size of this font
Returns:
  the Font constructed based on the parameters

#### getFont

    public static Font getFont(java.lang.String fontname,
               java.lang.String encoding,
               boolean embedded)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `encoding` - the encoding of the font
  `embedded` - true if the font is to be embedded in the PDF
Returns:
  the Font constructed based on the parameters

#### getFont

    public static Font getFont(java.lang.String fontname,
               java.lang.String encoding,
               float size,
               int style,
               java.awt.Color color)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `encoding` - the encoding of the font
  `size` - the size of this font
  `style` - the style of this font
  `color` - the `Color` of this font.
Returns:
  the Font constructed based on the parameters

#### getFont

    public static Font getFont(java.lang.String fontname,
               java.lang.String encoding,
               float size,
               int style)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `encoding` - the encoding of the font
  `size` - the size of this font
  `style` - the style of this font
Returns:
  the Font constructed based on the parameters

#### getFont

    public static Font getFont(java.lang.String fontname,
               java.lang.String encoding,
               float size)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `encoding` - the encoding of the font
  `size` - the size of this font
Returns:
  the Font constructed based on the parameters

#### getFont

    public static Font getFont(java.lang.String fontname,
               java.lang.String encoding)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `encoding` - the encoding of the font
Returns:
  the Font constructed based on the parameters

#### getFont

    public static Font getFont(java.lang.String fontname,
               float size,
               int style,
               java.awt.Color color)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `size` - the size of this font
  `style` - the style of this font
  `color` - the `Color` of this font.
Returns:
  the Font constructed based on the parameters

#### getFont

    public static Font getFont(java.lang.String fontname,
               float size,
               java.awt.Color color)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `size` - the size of this font
  `color` - the `Color` of this font.
Returns:
  the Font constructed based on the parameters
Since:
  2.1.0

#### getFont

    public static Font getFont(java.lang.String fontname,
               float size,
               int style)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `size` - the size of this font
  `style` - the style of this font
Returns:
  the Font constructed based on the parameters

#### getFont

    public static Font getFont(java.lang.String fontname,
               float size)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
  `size` - the size of this font
Returns:
  the Font constructed based on the parameters

#### getFont

    public static Font getFont(java.lang.String fontname)

Constructs a `Font`-object.

Parameters:
  `fontname` - the name of the font
Returns:
  the Font constructed based on the parameters

#### registerFamily

    public void registerFamily(java.lang.String familyName,
                      java.lang.String fullName,
                      java.lang.String path)

Register a font by giving explicitly the font family and name.

Parameters:
  `familyName` - the font family
  `fullName` - the font name
  `path` - the font path

#### register

    public static void register(java.lang.String path)

Register a ttf- or a ttc-file.

Parameters:
  `path` - the path to a ttf- or ttc-file

#### register

    public static void register(java.lang.String path,
                java.lang.String alias)

Register a font file and use an alias for the font contained in it.

Parameters:
  `path` - the path to a font file
  `alias` - the alias you want to use for the font

#### registerDirectory

    public static int registerDirectory(java.lang.String dir)

Register all the fonts in a directory.

Parameters:
  `dir` - the directory
Returns:
  the number of fonts registered

#### registerDirectory

    public static int registerDirectory(java.lang.String dir,
                        boolean scanSubdirectories)

Register all the fonts in a directory and possibly its subdirectories.

Parameters:
  `dir` - the directory
  `scanSubdirectories` - recursively scan subdirectories if `true</true>`
Returns:
  the number of fonts registered
Since:
  2.1.2

#### registerDirectories

    public static int registerDirectories()

Register fonts in some probable directories. It usually works in Windows, Linux and Solaris.

Returns:
  the number of fonts registered

#### getRegisteredFonts

    public static java.util.Set getRegisteredFonts()

Gets a set of registered fontnames.

Returns:
  a set of registered fonts

#### getRegisteredFamilies

    public static java.util.Set getRegisteredFamilies()

Gets a set of registered fontnames.

Returns:
  a set of registered font families

#### contains

    public static boolean contains(java.lang.String fontname)

Gets a set of registered fontnames.

Parameters:
  `fontname` - of a font that may or may not be registered
Returns:
  true if a given font is registered

#### isRegistered

    public static boolean isRegistered(java.lang.String fontname)

Checks if a certain font is registered.

Parameters:
  `fontname` - the name of the font that has to be checked.
Returns:
  true if the font is found

#### getFontImp

    public static FontFactoryImp getFontImp()

Gets the font factory implementation.

Returns:
  the font factory implementation

#### setFontImp

    public static void setFontImp(FontFactoryImp fontImp)

Sets the font factory implementation.

Parameters:
  `fontImp` - the font factory implementation