Package com.itextpdf.text
Class FontFactoryImp
- java.lang.Object
-
- com.itextpdf.text.FontFactoryImp
-
- All Implemented Interfaces:
FontProvider
- Direct Known Subclasses:
XMLWorkerFontProvider
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
Fields Modifier and Type Field Description boolean
defaultEmbedding
This is the default value of the embedded variable.String
defaultEncoding
This is the default encoding to use.
-
Constructor Summary
Constructors Constructor Description FontFactoryImp()
Creates new FontFactory
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected BaseFont
getBaseFont(String fontname, String encoding, boolean embedded, boolean cached)
Font
getFont(String fontname)
Constructs aFont
-object.Font
getFont(String fontname, float size)
Constructs aFont
-object.Font
getFont(String fontname, float size, int style)
Constructs aFont
-object.Font
getFont(String fontname, float size, int style, BaseColor color)
Constructs aFont
-object.Font
getFont(String fontname, float size, BaseColor color)
Constructs aFont
-object.Font
getFont(String fontname, String encoding)
Constructs aFont
-object.Font
getFont(String fontname, String encoding, boolean embedded)
Constructs aFont
-object.Font
getFont(String fontname, String encoding, boolean embedded, float size)
Constructs aFont
-object.Font
getFont(String fontname, String encoding, boolean embedded, float size, int style)
Constructs aFont
-object.Font
getFont(String fontname, String encoding, boolean embedded, float size, int style, BaseColor color)
Constructs aFont
-object.Font
getFont(String fontname, String encoding, boolean embedded, float size, int style, BaseColor color, boolean cached)
Constructs aFont
-object.Font
getFont(String fontname, String encoding, float size)
Constructs aFont
-object.Font
getFont(String fontname, String encoding, float size, int style)
Constructs aFont
-object.Font
getFont(String fontname, String encoding, float size, int style, BaseColor color)
Constructs aFont
-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.protected boolean
saveCopyOfRegularFont(String regularFontName, String path)
-
-
-
Field Detail
-
defaultEncoding
public String defaultEncoding
This is the default encoding to use.
-
defaultEmbedding
public boolean defaultEmbedding
This is the default value of the embedded variable.
-
-
Method Detail
-
getFont
public Font getFont(String fontname, String encoding, boolean embedded, float size, int style, BaseColor color)
Constructs aFont
-object.- Specified by:
getFont
in interfaceFontProvider
- Parameters:
fontname
- the name of the fontencoding
- the encoding of the fontembedded
- true if the font is to be embedded in the PDFsize
- the size of this fontstyle
- the style of this fontcolor
- theBaseColor
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 aFont
-object.- Parameters:
fontname
- the name of the fontencoding
- the encoding of the fontembedded
- true if the font is to be embedded in the PDFsize
- the size of this fontstyle
- the style of this fontcolor
- theBaseColor
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
-
getBaseFont
protected BaseFont getBaseFont(String fontname, String encoding, boolean embedded, boolean cached) throws IOException, DocumentException
- Throws:
IOException
DocumentException
-
getFont
public Font getFont(String fontname, String encoding, boolean embedded, float size, int style)
Constructs aFont
-object.- Parameters:
fontname
- the name of the fontencoding
- the encoding of the fontembedded
- true if the font is to be embedded in the PDFsize
- the size of this fontstyle
- 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 aFont
-object.- Parameters:
fontname
- the name of the fontencoding
- the encoding of the fontembedded
- true if the font is to be embedded in the PDFsize
- the size of this font- Returns:
- the Font constructed based on the parameters
-
getFont
public Font getFont(String fontname, String encoding, boolean embedded)
Constructs aFont
-object.- Parameters:
fontname
- the name of the fontencoding
- the encoding of the fontembedded
- 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 aFont
-object.- Parameters:
fontname
- the name of the fontencoding
- the encoding of the fontsize
- the size of this fontstyle
- the style of this fontcolor
- theBaseColor
of this font.- Returns:
- the Font constructed based on the parameters
-
getFont
public Font getFont(String fontname, String encoding, float size, int style)
Constructs aFont
-object.- Parameters:
fontname
- the name of the fontencoding
- the encoding of the fontsize
- the size of this fontstyle
- the style of this font- Returns:
- the Font constructed based on the parameters
-
getFont
public Font getFont(String fontname, String encoding, float size)
Constructs aFont
-object.- Parameters:
fontname
- the name of the fontencoding
- the encoding of the fontsize
- the size of this font- Returns:
- the Font constructed based on the parameters
-
getFont
public Font getFont(String fontname, float size, BaseColor color)
Constructs aFont
-object.- Parameters:
fontname
- the name of the fontsize
- the size of this fontcolor
- theBaseColor
of this font.- Returns:
- the Font constructed based on the parameters
- Since:
- 2.1.0
-
getFont
public Font getFont(String fontname, String encoding)
Constructs aFont
-object.- Parameters:
fontname
- the name of the fontencoding
- 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 aFont
-object.- Parameters:
fontname
- the name of the fontsize
- the size of this fontstyle
- the style of this fontcolor
- theBaseColor
of this font.- Returns:
- the Font constructed based on the parameters
-
getFont
public Font getFont(String fontname, float size, int style)
Constructs aFont
-object.- Parameters:
fontname
- the name of the fontsize
- the size of this fontstyle
- the style of this font- Returns:
- the Font constructed based on the parameters
-
getFont
public Font getFont(String fontname, float size)
Constructs aFont
-object.- Parameters:
fontname
- the name of the fontsize
- the size of this font- Returns:
- the Font constructed based on the parameters
-
getFont
public Font getFont(String fontname)
Constructs aFont
-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 familyfullName
- the font namepath
- 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 filealias
- 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 directoryscanSubdirectories
- recursively scan subdirectories iftrue
- 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 interfaceFontProvider
- Parameters:
fontname
- the name of the font that has to be checked.- Returns:
- true if the font is found
-
-