Package org.xhtmlrenderer.pdf
Class ITextFontResolver
- java.lang.Object
-
- org.xhtmlrenderer.pdf.ITextFontResolver
-
- All Implemented Interfaces:
FontResolver
- Direct Known Subclasses:
CJKFontResolver
public class ITextFontResolver extends Object implements FontResolver
-
-
Constructor Summary
Constructors Constructor Description ITextFontResolver()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addFont(String path, boolean embedded)
void
addFont(String path, String encoding, boolean embedded)
void
addFont(String path, String encoding, boolean embedded, String pathToPFB)
void
addFont(String path, String fontFamilyNameOverride, String encoding, boolean embedded, String pathToPFB)
void
addFontDirectory(String dir, boolean embedded)
static int
convertWeightToInt(IdentValue weight)
void
flushCache()
void
flushFontFaceFonts()
static Set<String>
getDistinctFontFamilyNames(String path, String encoding, boolean embedded)
Utility method which uses iText libraries to determine the family name(s) for the font at the given path.Map<String,FontFamily>
getFonts()
void
importFontFaces(List<FontFaceRule> fontFaces, UserAgentCallback userAgentCallback)
protected Map<String,FontFamily>
loadFonts()
FSFont
resolveFont(SharedContext renderingContext, FontSpecification spec)
-
-
-
Method Detail
-
getFonts
public Map<String,FontFamily> getFonts()
-
getDistinctFontFamilyNames
public static Set<String> getDistinctFontFamilyNames(String path, String encoding, boolean embedded)
Utility method which uses iText libraries to determine the family name(s) for the font at the given path. The iText APIs seem to indicate there can be more than one name, but this method will return a set of them. Use a name from this list when referencing the font in CSS for PDF output. Note that family names as reported by iText may vary from those reported by the AWT Font class, e.g. "Arial Unicode MS" for iText and "ArialUnicodeMS" for AWT.- Parameters:
path
- local path to the font fileencoding
- same as what you would use foraddFont(String, String, boolean)
embedded
- same as what you would use foraddFont(String, String, boolean)
- Returns:
- set of all family names for the font file, as reported by iText libraries
-
resolveFont
public FSFont resolveFont(SharedContext renderingContext, FontSpecification spec)
- Specified by:
resolveFont
in interfaceFontResolver
-
flushCache
public void flushCache()
- Specified by:
flushCache
in interfaceFontResolver
-
flushFontFaceFonts
public void flushFontFaceFonts()
-
importFontFaces
public void importFontFaces(List<FontFaceRule> fontFaces, UserAgentCallback userAgentCallback)
-
addFontDirectory
public void addFontDirectory(String dir, boolean embedded) throws com.lowagie.text.DocumentException, IOException
- Throws:
com.lowagie.text.DocumentException
IOException
-
addFont
public void addFont(String path, boolean embedded) throws com.lowagie.text.DocumentException, IOException
- Throws:
com.lowagie.text.DocumentException
IOException
-
addFont
public void addFont(String path, String encoding, boolean embedded) throws com.lowagie.text.DocumentException, IOException
- Throws:
com.lowagie.text.DocumentException
IOException
-
addFont
public void addFont(String path, String encoding, boolean embedded, String pathToPFB) throws com.lowagie.text.DocumentException, IOException
- Throws:
com.lowagie.text.DocumentException
IOException
-
addFont
public void addFont(String path, String fontFamilyNameOverride, String encoding, boolean embedded, String pathToPFB) throws com.lowagie.text.DocumentException, IOException
- Throws:
com.lowagie.text.DocumentException
IOException
-
convertWeightToInt
public static int convertWeightToInt(IdentValue weight)
-
loadFonts
protected Map<String,FontFamily> loadFonts()
-
-