com.itextpdf.text
Class FontFactoryImp

java.lang.Object
  extended by com.itextpdf.text.FontFactoryImp
All Implemented Interfaces:
FontProvider

public class FontFactoryImp
extends Object
implements FontProvider

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

Author:
Bruno Lowagie

Field Summary
 boolean defaultEmbedding
          This is the default value of the embedded variable.
 String defaultEncoding
          This is the default encoding to use.
private  Hashtable<String,ArrayList<String>> fontFamilies
          This is a map of fontfamilies.
private  Hashtable<String,String> trueTypeFonts
          This is a map of postscriptfontnames of True Type fonts and the path of their ttf- or ttc-file.
private static String[] TTFamilyOrder
           
 
Constructor Summary
FontFactoryImp()
          Creates new FontFactory
 
Method Summary
 Font getFont(Properties attributes)
          Constructs a Font-object.
 Font getFont(String fontname)
          Constructs a Font-object.
 Font getFont(String fontname, float size)
          Constructs a Font-object.
 Font getFont(String fontname, float size, BaseColor color)
          Constructs a Font-object.
 Font getFont(String fontname, float size, int style)
          Constructs a Font-object.
 Font getFont(String fontname, float size, int style, BaseColor color)
          Constructs a Font-object.
 Font getFont(String fontname, String encoding)
          Constructs a Font-object.
 Font getFont(String fontname, String encoding, boolean embedded)
          Constructs a Font-object.
 Font getFont(String fontname, String encoding, boolean embedded, float size)
          Constructs a Font-object.
 Font getFont(String fontname, String encoding, boolean embedded, float size, int style)
          Constructs a Font-object.
 Font getFont(String fontname, String encoding, boolean embedded, float size, int style, BaseColor color)
          Constructs a Font-object.
 Font getFont(String fontname, String encoding, boolean embedded, float size, int style, BaseColor color, boolean cached)
          Constructs a Font-object.
 Font getFont(String fontname, String encoding, float size)
          Constructs a Font-object.
 Font getFont(String fontname, String encoding, float size, int style)
          Constructs a Font-object.
 Font getFont(String fontname, String encoding, float size, int style, BaseColor color)
          Constructs a Font-object.
 Set<String> getRegisteredFamilies()
          Gets a set of registered fontnames.
 Set<String> getRegisteredFonts()
          Gets a set of registered fontnames.
 boolean isRegistered(String fontname)
          Checks if a certain font is registered.
 void register(String path)
          Register a ttf- or a ttc-file.
 void register(String path, String alias)
          Register a font file and use an alias for the font contained in it.
 int registerDirectories()
          Register fonts in some probable directories.
 int registerDirectory(String dir)
          Register all the fonts in a directory.
 int registerDirectory(String dir, boolean scanSubdirectories)
          Register all the fonts in a directory and possibly its subdirectories.
 void registerFamily(String familyName, String fullName, String path)
          Register a font by giving explicitly the font family and name.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

trueTypeFonts

private Hashtable<String,String> trueTypeFonts
This is a map of postscriptfontnames of True Type fonts and the path of their ttf- or ttc-file.


TTFamilyOrder

private static String[] TTFamilyOrder

fontFamilies

private Hashtable<String,ArrayList<String>> fontFamilies
This is a map of fontfamilies.


defaultEncoding

public String defaultEncoding
This is the default encoding to use.


defaultEmbedding

public boolean defaultEmbedding
This is the default value of the embedded variable.

Constructor Detail

FontFactoryImp

public FontFactoryImp()
Creates new FontFactory

Method Detail

getFont

public Font getFont(String fontname,
                    String encoding,
                    boolean embedded,
                    float size,
                    int style,
                    BaseColor color)
Constructs a Font-object.

Specified by:
getFont in interface FontProvider
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 BaseColor of this font.
Returns:
the Font constructed based on the parameters

getFont

public Font getFont(String fontname,
                    String encoding,
                    boolean embedded,
                    float size,
                    int style,
                    BaseColor 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 BaseColor 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 Font getFont(Properties attributes)
Constructs a Font-object.

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

getFont

public Font getFont(String fontname,
                    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 Font getFont(String fontname,
                    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 Font getFont(String fontname,
                    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 Font getFont(String fontname,
                    String encoding,
                    float size,
                    int style,
                    BaseColor 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 BaseColor of this font.
Returns:
the Font constructed based on the parameters

getFont

public Font getFont(String fontname,
                    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 Font getFont(String fontname,
                    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 Font getFont(String fontname,
                    float size,
                    BaseColor color)
Constructs a Font-object.

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

getFont

public Font getFont(String fontname,
                    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 Font getFont(String fontname,
                    float size,
                    int style,
                    BaseColor 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 BaseColor of this font.
Returns:
the Font constructed based on the parameters

getFont

public Font getFont(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 Font getFont(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 Font getFont(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(String familyName,
                           String fullName,
                           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 void register(String path)
Register a ttf- or a ttc-file.

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

register

public void register(String path,
                     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 int registerDirectory(String dir)
Register all the fonts in a directory.

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

registerDirectory

public int registerDirectory(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
Returns:
the number of fonts registered
Since:
2.1.2

registerDirectories

public int registerDirectories()
Register fonts in some probable directories. It usually works in Windows, Linux and Solaris.

Returns:
the number of fonts registered

getRegisteredFonts

public Set<String> getRegisteredFonts()
Gets a set of registered fontnames.

Returns:
a set of registered fonts

getRegisteredFamilies

public Set<String> getRegisteredFamilies()
Gets a set of registered fontnames.

Returns:
a set of registered font families

isRegistered

public boolean isRegistered(String fontname)
Checks if a certain font is registered.

Specified by:
isRegistered in interface FontProvider
Parameters:
fontname - the name of the font that has to be checked.
Returns:
true if the font is found

Hosted by Hostbasket