Class FontSet
A FontSet instance could be shared for multiple threads. However FontSet filling is not thread safe operation.
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
addDirectory
(String dir) Add all the fonts in a directory.int
addDirectory
(String dir, boolean scanSubdirectories) Add all the fonts in a directory and possibly its subdirectories.boolean
addFont
(byte[] fontData) boolean
boolean
boolean
boolean
addFont
(FontProgram fontProgram, String encoding) Add not supported for auto creating FontPrograms.boolean
addFont
(FontProgram fontProgram, String encoding, String alias) Add not supported for auto creating FontPrograms.boolean
addFont
(FontProgram fontProgram, String encoding, String alias, Range unicodeRange) Add not supported for auto creating FontPrograms.final boolean
AddsFontInfo
.boolean
AddsFontInfo
with alias.boolean
AddsFontInfo
with alias.boolean
boolean
boolean
boolean
boolean
Search in existed fonts for PostScript name or full font name.Search in existed fonts for PostScript name or full font name.getFonts()
Gets available fonts.Gets union of available and temporary fonts.boolean
isEmpty()
Returnstrue
if this set contains no elements.int
size()
Returns the number of elements in this set.
-
Constructor Details
-
FontSet
public FontSet()Creates a new instance ofFontSet
.
-
-
Method Details
-
addDirectory
Add all the fonts in a directory and possibly its subdirectories.- Parameters:
-
dir
- path to directory. -
scanSubdirectories
- recursively scan subdirectories iftrue
. - Returns:
- number of added fonts.
-
addDirectory
Add all the fonts in a directory.- Parameters:
-
dir
- path to directory. - Returns:
- number of added fonts.
-
addFont
Add not supported for auto creating FontPrograms.Note,
FontInfo.getAlias()
do not taken into account inFontInfo.equals(java.lang.Object)
. The same font with different alias will not be replaced. Alias will replace original font family in font selector algorithm.- Parameters:
-
fontProgram
-FontProgram
-
encoding
- FontEncoding for creatingPdfFont
-
alias
- font alias. -
unicodeRange
- sets the specific range of characters to be used from the font - Returns:
- true, if font was successfully added, otherwise false.
-
addFont
Add not supported for auto creating FontPrograms.Note,
FontInfo.getAlias()
do not taken into account inFontInfo.equals(java.lang.Object)
. The same font with different alias will not be replaced. Alias will replace original font family in font selector algorithm.- Parameters:
-
fontProgram
-FontProgram
-
encoding
- FontEncoding for creatingPdfFont
-
alias
- font alias. - Returns:
- true, if font was successfully added, otherwise false.
-
addFont
Add not supported for auto creating FontPrograms.- Parameters:
-
fontProgram
-FontProgram
-
encoding
- FontEncoding for creatingPdfFont
. - Returns:
- true, if font was successfully added, otherwise false.
-
addFont
CreatesFontInfo
, fetchesFontProgramDescriptor
and adds just createdFontInfo
toFontSet
.Note,
FontInfo.getAlias()
do not taken into account inFontInfo.equals(java.lang.Object)
. The same font with different alias will not be replaced. Alias will replace original font family in font selector algorithm.- Parameters:
-
fontPath
- path to font data. -
encoding
- preferred font encoding. -
alias
- font alias, will replace original font family. -
unicodeRange
- sets the specific range of characters to be used from the font - Returns:
- true, if font was successfully added, otherwise false.
- See Also:
-
addFont
CreatesFontInfo
, fetchesFontProgramDescriptor
and adds just createdFontInfo
toFontSet
.Note,
FontInfo.getAlias()
do not taken into account inFontInfo.equals(java.lang.Object)
. The same font with different alias will not be replaced. Alias will replace original font family in font selector algorithm.- Parameters:
-
fontPath
- path to font data. -
encoding
- preferred font encoding. -
alias
- font alias. - Returns:
- true, if font was successfully added, otherwise false.
- See Also:
-
addFont
- Parameters:
-
fontPath
- path to font data. -
encoding
- preferred font encoding. - Returns:
- true, if font was successfully added, otherwise false.
- See Also:
-
addFont
CreatesFontInfo
, fetchesFontProgramDescriptor
and adds just createdFontInfo
toFontSet
.Note,
FontInfo.getAlias()
do not taken into account inFontInfo.equals(java.lang.Object)
. The same font with different alias will not be replaced. Alias will replace original font family in font selector algorithm.- Parameters:
-
fontData
- font data. -
encoding
- preferred font encoding. -
alias
- font alias. -
unicodeRange
- sets the specific range of characters to be used from the font - Returns:
- true, if font was successfully added, otherwise false.
- See Also:
-
addFont
CreatesFontInfo
, fetchesFontProgramDescriptor
and adds just createdFontInfo
toFontSet
.Note,
FontInfo.getAlias()
do not taken into account inFontInfo.equals(java.lang.Object)
. The same font with different alias will not be replaced. Alias will replace original font family in font selector algorithm.- Parameters:
-
fontData
- font data. -
encoding
- preferred font encoding. -
alias
- font alias. - Returns:
- true, if font was successfully added, otherwise false.
- See Also:
-
addFont
- Parameters:
-
fontData
- font data. -
encoding
- preferred font encoding. - Returns:
- true, if font was successfully added, otherwise false.
- See Also:
-
addFont
CreatesFontInfo
, fetchesFontProgramDescriptor
and adds just createdFontInfo
toFontSet
.FontProvider.getDefaultEncoding(FontProgram)
will be used to determine encoding.- Parameters:
-
fontPath
- path to font data. - Returns:
- true, if font was successfully added, otherwise false.
-
addFont
public boolean addFont(byte[] fontData) CreatesFontInfo
, fetchesFontProgramDescriptor
and adds just createdFontInfo
toFontSet
.FontProvider.getDefaultEncoding(FontProgram)
will be used to determine encoding.- Parameters:
-
fontData
- font data. - Returns:
- true, if font was successfully added, otherwise false.
-
addFont
AddsFontInfo
with alias. Could be used to fill temporary font set.Note,
FontInfo.getAlias()
do not taken into account inFontInfo.equals(java.lang.Object)
. The same font with different alias will not be replaced. Alias will replace original font family in font selector algorithm.- Parameters:
-
fontInfo
- font info. -
alias
- font alias. -
unicodeRange
- sets the specific range of characters to be used from the font - Returns:
- true, if font was successfully added, otherwise false.
-
addFont
AddsFontInfo
with alias. Could be used to fill temporary font set.Note,
FontInfo.getAlias()
do not taken into account inFontInfo.equals(java.lang.Object)
. The same font with different alias will not be replaced. Alias will replace original font family in font selector algorithm.- Parameters:
-
fontInfo
- font info. -
alias
- font alias. - Returns:
- true, if font was successfully added, otherwise false.
-
addFont
AddsFontInfo
. Could be used to fill temporary font set.Note,
FontInfo.getAlias()
do not taken into account inFontInfo.equals(java.lang.Object)
. The same font with different alias will not be replaced.- Parameters:
-
fontInfo
- font info. - Returns:
- true, if font was successfully added, otherwise false.
-
contains
Search in existed fonts for PostScript name or full font name.Note, this method has O(n) complexity.
- Parameters:
-
fontName
- PostScript or full name. - Returns:
-
true, if
FontSet
contains font with given name.
-
get
Search in existed fonts for PostScript name or full font name.Note, this method has O(n) complexity.
- Parameters:
-
fontName
- PostScript or full name. - Returns:
-
Collection of
FontInfo
from set of fonts with given PostScript or full name.
-
getFonts
Gets available fonts.Note, the collection is unmodifiable.
- Returns:
- set of all available fonts
-
getFonts
Gets union of available and temporary fonts.Note, the collection is unmodifiable.
- Parameters:
-
additionalFonts
- set of temporary fonts - Returns:
- set of all available and temporary fonts
-
isEmpty
public boolean isEmpty()Returnstrue
if this set contains no elements.- Returns:
-
true
if this set contains no elements
-
size
public int size()Returns the number of elements in this set.- Returns:
- the number of elements in this set
-