Package com.openhtmltopdf.java2d
Class Java2DFontResolver
- java.lang.Object
-
- com.openhtmltopdf.java2d.Java2DFontResolver
-
- All Implemented Interfaces:
com.openhtmltopdf.extend.FontResolver
public class Java2DFontResolver extends Object implements com.openhtmltopdf.extend.FontResolver
REsolves an AWT font instance from a list of CSS font families and characteristics.- Author:
- Joshua Marinacci
-
-
Constructor Summary
Constructors Constructor Description Java2DFontResolver(com.openhtmltopdf.layout.SharedContext sharedCtx, boolean useEnvironmentFonts)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
addFontFile(File fontFile, String fontFamilyNameOverride, Integer fontWeightOverride, com.openhtmltopdf.css.constants.IdentValue fontStyleOverride)
Add a font using a existing file.void
addInputStreamFont(com.openhtmltopdf.extend.FSSupplier<InputStream> fontSupplier, String fontFamilyNameOverride, Integer fontWeightOverride, com.openhtmltopdf.css.constants.IdentValue fontStyleOverride)
protected static Font
createFont(com.openhtmltopdf.layout.SharedContext ctx, Font rootFont, float size, com.openhtmltopdf.css.constants.IdentValue weight, com.openhtmltopdf.css.constants.IdentValue style, com.openhtmltopdf.css.constants.IdentValue variant)
Creates a concrete instance of a font at specified size, weight, style and variant.void
flushCache()
Deprecated.protected static String
getFontInstanceHashName(com.openhtmltopdf.layout.SharedContext ctx, String name, float size, com.openhtmltopdf.css.constants.IdentValue weight, com.openhtmltopdf.css.constants.IdentValue style, com.openhtmltopdf.css.constants.IdentValue variant)
Gets the hash key for a concrete instance of a font.void
importFontFaces(List<com.openhtmltopdf.css.sheet.FontFaceRule> fontFaces)
com.openhtmltopdf.render.FSFont
resolveFont(com.openhtmltopdf.layout.SharedContext renderingContext, com.openhtmltopdf.css.value.FontSpecification spec)
com.openhtmltopdf.render.FSFont
resolveFont(com.openhtmltopdf.layout.SharedContext ctx, String[] families, float size, com.openhtmltopdf.css.constants.IdentValue weight, com.openhtmltopdf.css.constants.IdentValue style, com.openhtmltopdf.css.constants.IdentValue variant)
Resolves a list of font families.void
setFontMapping(String name, Font font)
Sets the fontMapping attribute of the FontResolver object
-
-
-
Method Detail
-
flushCache
@Deprecated public void flushCache()
Deprecated.
-
importFontFaces
public void importFontFaces(List<com.openhtmltopdf.css.sheet.FontFaceRule> fontFaces)
-
addInputStreamFont
public void addInputStreamFont(com.openhtmltopdf.extend.FSSupplier<InputStream> fontSupplier, String fontFamilyNameOverride, Integer fontWeightOverride, com.openhtmltopdf.css.constants.IdentValue fontStyleOverride)
-
addFontFile
public void addFontFile(File fontFile, String fontFamilyNameOverride, Integer fontWeightOverride, com.openhtmltopdf.css.constants.IdentValue fontStyleOverride)
Add a font using a existing file. Does not handle true type collections.
-
resolveFont
public com.openhtmltopdf.render.FSFont resolveFont(com.openhtmltopdf.layout.SharedContext ctx, String[] families, float size, com.openhtmltopdf.css.constants.IdentValue weight, com.openhtmltopdf.css.constants.IdentValue style, com.openhtmltopdf.css.constants.IdentValue variant)
Resolves a list of font families. Search order for each family is: 1. Concrete fonts with correct size that have already been used. 2. Font face fonts. 3. System fonts.
-
setFontMapping
public void setFontMapping(String name, Font font)
Sets the fontMapping attribute of the FontResolver object- Parameters:
name
- The new fontMapping valuefont
- The new fontMapping value
-
createFont
protected static Font createFont(com.openhtmltopdf.layout.SharedContext ctx, Font rootFont, float size, com.openhtmltopdf.css.constants.IdentValue weight, com.openhtmltopdf.css.constants.IdentValue style, com.openhtmltopdf.css.constants.IdentValue variant)
Creates a concrete instance of a font at specified size, weight, style and variant.
-
getFontInstanceHashName
protected static String getFontInstanceHashName(com.openhtmltopdf.layout.SharedContext ctx, String name, float size, com.openhtmltopdf.css.constants.IdentValue weight, com.openhtmltopdf.css.constants.IdentValue style, com.openhtmltopdf.css.constants.IdentValue variant)
Gets the hash key for a concrete instance of a font. This incorporates size, weight, etc.
-
resolveFont
public com.openhtmltopdf.render.FSFont resolveFont(com.openhtmltopdf.layout.SharedContext renderingContext, com.openhtmltopdf.css.value.FontSpecification spec)
- Specified by:
resolveFont
in interfacecom.openhtmltopdf.extend.FontResolver
-
-