java.lang.Object
org.xhtmlrenderer.pdf.ITextFontResolver
- All Implemented Interfaces:
org.xhtmlrenderer.extend.FontResolver
- Direct Known Subclasses:
CJKFontResolver
@ParametersAreNonnullByDefault
public class ITextFontResolver
extends Object
implements org.xhtmlrenderer.extend.FontResolver
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidvoidvoidvoidaddFont(String path, String fontFamilyNameOverride, String encoding, boolean embedded, String pathToPFB) voidaddFontDirectory(String dir, boolean embedded) static intconvertWeightToInt(org.xhtmlrenderer.css.constants.IdentValue weight) voidvoidgetDistinctFontFamilyNames(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.getFonts()voidimportFontFaces(List<org.xhtmlrenderer.css.sheet.FontFaceRule> fontFaces, org.xhtmlrenderer.extend.UserAgentCallback userAgentCallback) protected Map<String,FontFamily> org.xhtmlrenderer.render.FSFontresolveFont(org.xhtmlrenderer.layout.SharedContext renderingContext, org.xhtmlrenderer.css.value.FontSpecification spec)
-
Constructor Details
-
ITextFontResolver
public ITextFontResolver()
-
-
Method Details
-
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
-
flushCache
public void flushCache()- Specified by:
flushCachein interfaceorg.xhtmlrenderer.extend.FontResolver
-
flushFontFaceFonts
public void flushFontFaceFonts() -
importFontFaces
public void importFontFaces(List<org.xhtmlrenderer.css.sheet.FontFaceRule> fontFaces, org.xhtmlrenderer.extend.UserAgentCallback userAgentCallback) -
addFontDirectory
public void addFontDirectory(String dir, boolean embedded) throws com.lowagie.text.DocumentException, IOException - Throws:
com.lowagie.text.DocumentExceptionIOException
-
addFont
public void addFont(String path, boolean embedded) throws com.lowagie.text.DocumentException, IOException - Throws:
com.lowagie.text.DocumentExceptionIOException
-
addFont
public void addFont(String path, String encoding, boolean embedded) throws com.lowagie.text.DocumentException, IOException - Throws:
com.lowagie.text.DocumentExceptionIOException
-
addFont
public void addFont(String path, String encoding, boolean embedded, @Nullable String pathToPFB) throws com.lowagie.text.DocumentException, IOException - Throws:
com.lowagie.text.DocumentExceptionIOException
-
addFont
public void addFont(String path, @Nullable String fontFamilyNameOverride, String encoding, boolean embedded, @Nullable String pathToPFB) throws com.lowagie.text.DocumentException, IOException - Throws:
com.lowagie.text.DocumentExceptionIOException
-
addFont
-
convertWeightToInt
public static int convertWeightToInt(org.xhtmlrenderer.css.constants.IdentValue weight) -
loadFonts
-