Package org.apache.fop.fonts.truetype
Class OFFontLoader
- java.lang.Object
-
- org.apache.fop.fonts.FontLoader
-
- org.apache.fop.fonts.truetype.OFFontLoader
-
public class OFFontLoader extends FontLoader
Loads a TrueType font into memory directly from the original font file.
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
embedAsType1
private EmbeddingMode
embeddingMode
private EncodingMode
encodingMode
private MultiByteFont
multiFont
private boolean
simulateStyle
private SingleByteFont
singleFont
private java.lang.String
subFontName
private boolean
useSVG
-
Fields inherited from class org.apache.fop.fonts.FontLoader
embedded, fontFileURI, loaded, log, resourceResolver, returnFont, useAdvanced, useKerning
-
-
Constructor Summary
Constructors Constructor Description OFFontLoader(java.net.URI fontFileURI, java.lang.String subFontName, boolean embedded, EmbeddingMode embeddingMode, EncodingMode encodingMode, boolean useKerning, boolean useAdvanced, InternalResourceResolver resolver, boolean simulateStyle, boolean embedAsType1, boolean useSVG)
Additional constructor for TrueType Collections.OFFontLoader(java.net.URI fontFileURI, InternalResourceResolver resourceResolver)
Default constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
buildFont(OpenFont otf, java.lang.String ttcFontName)
private void
copyAdvanced(OpenFont otf)
Copy advanced typographic information.private void
copyGlyphMetricsSingleByte(OpenFont otf)
private void
copyKerning(OpenFont otf, boolean isCid)
Copy kerning information.private CMapSegment[]
getCMap(OpenFont otf)
protected void
read()
Reads/parses the font data.private void
read(java.lang.String ttcFontName)
Reads a TrueType font.static java.lang.String
readHeader(FontFileReader fontFile)
-
Methods inherited from class org.apache.fop.fonts.FontLoader
getFont, loadFont
-
-
-
-
Field Detail
-
multiFont
private MultiByteFont multiFont
-
singleFont
private SingleByteFont singleFont
-
subFontName
private final java.lang.String subFontName
-
encodingMode
private EncodingMode encodingMode
-
embeddingMode
private EmbeddingMode embeddingMode
-
simulateStyle
private boolean simulateStyle
-
embedAsType1
private boolean embedAsType1
-
useSVG
private boolean useSVG
-
-
Constructor Detail
-
OFFontLoader
public OFFontLoader(java.net.URI fontFileURI, InternalResourceResolver resourceResolver)
Default constructor- Parameters:
fontFileURI
- the URI representing the font fileresourceResolver
- the resource resolver for font URI resolution
-
OFFontLoader
public OFFontLoader(java.net.URI fontFileURI, java.lang.String subFontName, boolean embedded, EmbeddingMode embeddingMode, EncodingMode encodingMode, boolean useKerning, boolean useAdvanced, InternalResourceResolver resolver, boolean simulateStyle, boolean embedAsType1, boolean useSVG)
Additional constructor for TrueType Collections.- Parameters:
fontFileURI
- the URI representing the font filesubFontName
- the sub-fontname of a font in a TrueType Collection (or null for normal TrueType fonts)embedded
- indicates whether the font is embedded or referencedembeddingMode
- the embedding mode of the fontencodingMode
- the requested encoding modeuseKerning
- true to enable loading kerning info if available, false to disableuseAdvanced
- true to enable loading advanced info if available, false to disableresolver
- the FontResolver for font URI resolutionsimulateStyle
- Determines whether to simulate font styles if a font does not support those by default.
-
-
Method Detail
-
read
protected void read() throws java.io.IOException
Reads/parses the font data.- Specified by:
read
in classFontLoader
- Throws:
java.io.IOException
- In case of an I/O error
-
read
private void read(java.lang.String ttcFontName) throws java.io.IOException
Reads a TrueType font.- Parameters:
ttcFontName
- the TrueType sub-font name of TrueType Collection (may be null for normal TrueType fonts)- Throws:
java.io.IOException
- if an I/O error occurs
-
readHeader
public static java.lang.String readHeader(FontFileReader fontFile) throws java.io.IOException
- Throws:
java.io.IOException
-
buildFont
private void buildFont(OpenFont otf, java.lang.String ttcFontName)
-
getCMap
private CMapSegment[] getCMap(OpenFont otf)
-
copyGlyphMetricsSingleByte
private void copyGlyphMetricsSingleByte(OpenFont otf)
-
copyKerning
private void copyKerning(OpenFont otf, boolean isCid)
Copy kerning information.
-
copyAdvanced
private void copyAdvanced(OpenFont otf)
Copy advanced typographic information.
-
-