Class FallbackFontStore
- java.lang.Object
-
- com.openhtmltopdf.pdfboxout.fontstore.FallbackFontStore
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
public class FallbackFontStore extends java.lang.Object implements java.io.Closeable
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<org.apache.fontbox.ttf.TrueTypeCollection>
_collectionsToClose
private org.apache.pdfbox.pdmodel.PDDocument
_doc
private FSCacheEx<java.lang.String,FSCacheValue>
_fontMetricsCache
private java.util.List<PdfBoxFontResolver.FontDescription>
fonts
-
Constructor Summary
Constructors Constructor Description FallbackFontStore(SharedContext sharedContext, org.apache.pdfbox.pdmodel.PDDocument doc, FSCacheEx<java.lang.String,FSCacheValue> pdfMetricsCache)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addFont(boolean subset, PdfBoxFontResolver.FontDescription descr)
void
addFont(FSSupplier<java.io.InputStream> supplier, java.lang.String fontFamilyNameOverride, java.lang.Integer fontWeightOverride, IdentValue fontStyleOverride, boolean subset)
void
addFont(PDFontSupplier supplier, java.lang.String fontFamilyNameOverride, java.lang.Integer fontWeightOverride, IdentValue fontStyleOverride, boolean subset)
(package private) void
addFont(org.apache.fontbox.ttf.TrueTypeFont trueTypeFont, java.lang.String fontFamilyNameOverride, java.lang.Integer fontWeightOverride, IdentValue fontStyleOverride, boolean subset)
Add a font using a FontBox TrueTypeFont.void
addFontCollection(org.apache.fontbox.ttf.TrueTypeCollection collection, java.lang.String fontFamilyNameOverride, java.lang.Integer fontWeightOverride, IdentValue fontStyleOverride, boolean subset)
void
addFontLazy(FSSupplier<org.apache.pdfbox.pdmodel.font.PDFont> font, java.lang.String fontFamilyNameOverride, java.lang.Integer fontWeightOverride, IdentValue fontStyleOverride, boolean subset)
Add a font with a lazy loaded PDFontvoid
close()
private int
getFamilyPriority(java.lang.String fontFamily, java.util.List<java.lang.String> desiredFamilies)
private int
getFontPriority(PdfBoxFontResolver.FontDescription font, java.lang.String[] families, IdentValue weight, IdentValue desiredStyle, IdentValue variant)
java.util.List<PdfBoxFontResolver.FontDescription>
resolveFonts(SharedContext ctx, java.lang.String[] families, float size, IdentValue weight, IdentValue style, IdentValue variant)
-
-
-
Field Detail
-
fonts
private final java.util.List<PdfBoxFontResolver.FontDescription> fonts
-
_collectionsToClose
private final java.util.List<org.apache.fontbox.ttf.TrueTypeCollection> _collectionsToClose
-
_doc
private final org.apache.pdfbox.pdmodel.PDDocument _doc
-
_fontMetricsCache
private final FSCacheEx<java.lang.String,FSCacheValue> _fontMetricsCache
-
-
Constructor Detail
-
FallbackFontStore
public FallbackFontStore(SharedContext sharedContext, org.apache.pdfbox.pdmodel.PDDocument doc, FSCacheEx<java.lang.String,FSCacheValue> pdfMetricsCache)
-
-
Method Detail
-
getFontPriority
private int getFontPriority(PdfBoxFontResolver.FontDescription font, java.lang.String[] families, IdentValue weight, IdentValue desiredStyle, IdentValue variant)
-
getFamilyPriority
private int getFamilyPriority(java.lang.String fontFamily, java.util.List<java.lang.String> desiredFamilies)
-
resolveFonts
public java.util.List<PdfBoxFontResolver.FontDescription> resolveFonts(SharedContext ctx, java.lang.String[] families, float size, IdentValue weight, IdentValue style, IdentValue variant)
-
addFont
public void addFont(FSSupplier<java.io.InputStream> supplier, java.lang.String fontFamilyNameOverride, java.lang.Integer fontWeightOverride, IdentValue fontStyleOverride, boolean subset)
-
addFont
public void addFont(PDFontSupplier supplier, java.lang.String fontFamilyNameOverride, java.lang.Integer fontWeightOverride, IdentValue fontStyleOverride, boolean subset)
-
addFontLazy
public void addFontLazy(FSSupplier<org.apache.pdfbox.pdmodel.font.PDFont> font, java.lang.String fontFamilyNameOverride, java.lang.Integer fontWeightOverride, IdentValue fontStyleOverride, boolean subset)
Add a font with a lazy loaded PDFont
-
addFont
private void addFont(boolean subset, PdfBoxFontResolver.FontDescription descr)
-
close
public void close() throws java.io.IOException
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Throws:
java.io.IOException
-
addFont
void addFont(org.apache.fontbox.ttf.TrueTypeFont trueTypeFont, java.lang.String fontFamilyNameOverride, java.lang.Integer fontWeightOverride, IdentValue fontStyleOverride, boolean subset) throws java.io.IOException
Add a font using a FontBox TrueTypeFont.- Throws:
java.io.IOException
-
addFontCollection
public void addFontCollection(org.apache.fontbox.ttf.TrueTypeCollection collection, java.lang.String fontFamilyNameOverride, java.lang.Integer fontWeightOverride, IdentValue fontStyleOverride, boolean subset) throws java.io.IOException
- Throws:
java.io.IOException
-
-