Class FontSet
A FontSet instance could be shared for multiple threads. However FontSet filling is not thread safe operation.
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintaddDirectory(String dir) Add all the fonts in a directory.intaddDirectory(String dir, boolean scanSubdirectories) Add all the fonts in a directory and possibly its subdirectories.booleanaddFont(byte[] fontData) booleanbooleanbooleanbooleanaddFont(FontProgram fontProgram, String encoding) Add not supported for auto creating FontPrograms.booleanaddFont(FontProgram fontProgram, String encoding, String alias) Add not supported for auto creating FontPrograms.booleanaddFont(FontProgram fontProgram, String encoding, String alias, Range unicodeRange) Add not supported for auto creating FontPrograms.final booleanAddsFontInfo.booleanAddsFontInfowith alias.booleanAddsFontInfowith alias.booleanbooleanbooleanbooleanbooleanSearch 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.booleanisEmpty()Returnstrueif this set contains no elements.intsize()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, fetchesFontProgramDescriptorand adds just createdFontInfotoFontSet.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, fetchesFontProgramDescriptorand adds just createdFontInfotoFontSet.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, fetchesFontProgramDescriptorand adds just createdFontInfotoFontSet.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, fetchesFontProgramDescriptorand adds just createdFontInfotoFontSet.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, fetchesFontProgramDescriptorand adds just createdFontInfotoFontSet.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, fetchesFontProgramDescriptorand adds just createdFontInfotoFontSet.FontProvider.getDefaultEncoding(FontProgram)will be used to determine encoding.- Parameters:
-
fontData- font data. - Returns:
- true, if font was successfully added, otherwise false.
-
addFont
AddsFontInfowith 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
AddsFontInfowith 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
FontSetcontains 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
FontInfofrom 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()Returnstrueif this set contains no elements.- Returns:
-
trueif 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
-