public class PDType1CFont extends PDSimpleFont
encoding, glyphList
DEFAULT_FONT_MATRIX, dict
Constructor and Description |
---|
PDType1CFont(COSDictionary fontDictionary)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
String |
codeToName(int code) |
protected byte[] |
encode(int unicode)
Encodes the given Unicode code point for use in a PDF content stream.
|
float |
getAverageFontWidth()
This will get the average font width for all characters.
|
String |
getBaseFont()
Returns the PostScript name of the font.
|
org.apache.fontbox.util.BoundingBox |
getBoundingBox()
Returns the font's bounding box.
|
org.apache.fontbox.cff.CFFType1Font |
getCFFType1Font()
Returns the embedded Type 1-equivalent CFF font.
|
org.apache.fontbox.FontBoxFont |
getFontBoxFont()
Returns the embedded or system font used for rendering.
|
Matrix |
getFontMatrix()
Returns the font matrix, which represents the transformation from glyph space to text space.
|
float |
getHeight(int code)
Returns the height of the given character, in glyph space.
|
String |
getName()
Returns the name of this font, either the PostScript "BaseName" or the Type 3 "Name".
|
GeneralPath |
getPath(String name)
Returns the path for the character with the given name.
|
float |
getStringWidth(String string)
Returns the width of the given Unicode string.
|
float |
getWidthFromFont(int code)
Returns the width of a glyph in the embedded font file.
|
boolean |
hasGlyph(String name)
Returns true if the font contains the character with the given name.
|
boolean |
isDamaged()
Returns true if the embedded font file is damaged.
|
boolean |
isEmbedded()
Returns true if the font file is embedded in the PDF.
|
int |
readCode(InputStream in)
Reads a character code from a content stream string.
|
protected Encoding |
readEncodingFromFont()
Called by readEncoding() if the encoding needs to be extracted from the font file.
|
addToSubset, getEncoding, getGlyphList, getStandard14Width, getSymbolicFlag, hasExplicitWidth, isFontSymbolic, isStandard14, isSymbolic, isVertical, readEncoding, subset, toUnicode, toUnicode, willBeSubset
encode, equals, getCOSObject, getDisplacement, getFontDescriptor, getPositionVector, getSpaceWidth, getStandard14AFM, getSubType, getToUnicodeCMap, getType, getWidth, getWidths, hashCode, readCMap, setFontDescriptor, toString
public PDType1CFont(COSDictionary fontDictionary) throws IOException
fontDictionary
- the corresponding dictionaryIOException
- it something went wrongpublic org.apache.fontbox.FontBoxFont getFontBoxFont()
PDSimpleFont
getFontBoxFont
in class PDSimpleFont
public final String getBaseFont()
public GeneralPath getPath(String name) throws IOException
PDSimpleFont
getPath
in class PDSimpleFont
IOException
- if the path could not be readpublic boolean hasGlyph(String name) throws IOException
PDSimpleFont
hasGlyph
in class PDSimpleFont
IOException
- if the path could not be readpublic final String getName()
PDFontLike
public org.apache.fontbox.util.BoundingBox getBoundingBox() throws IOException
PDFontLike
IOException
public String codeToName(int code)
protected Encoding readEncodingFromFont() throws IOException
PDSimpleFont
readEncodingFromFont
in class PDSimpleFont
IOException
- if the font file could not be read.public int readCode(InputStream in) throws IOException
PDFont
readCode
in class PDFont
in
- string streamIOException
- if the CMap or stream cannot be readpublic final Matrix getFontMatrix()
PDFontLike
getFontMatrix
in interface PDFontLike
getFontMatrix
in class PDFont
public boolean isDamaged()
PDFontLike
public float getWidthFromFont(int code) throws IOException
PDFontLike
code
- character codeIOException
- if the font could not be readpublic boolean isEmbedded()
PDFontLike
public float getHeight(int code) throws IOException
PDFontLike
Warning: This method is deprecated in PDFBox 2.0 because there is no meaningful value
which it can return. The PDFontLike.getWidth(int)
method returns the advance width of a glyph,
but there is no corresponding advance height. The logical height of a character is the same
for every character in a font, so if you want that, retrieve the font bbox's height.
Otherwise if you want the visual bounds of the glyph then call getPath(..) on the appropriate
PDFont subclass to retrieve the glyph outline as a GeneralPath. See the cyan rectangles in
the DrawPrintTextLocations.java example to see this in action.
code
- character codeIOException
protected byte[] encode(int unicode) throws IOException
PDFont
This method is called when embedding text in PDFs and when filling in fields.
encode
in class PDFont
unicode
- Unicode code point.IOException
- If the text could not be encoded.public float getStringWidth(String string) throws IOException
PDFont
getStringWidth
in class PDFont
string
- The text to get the width of.IOException
- If there is an error getting the width information.public float getAverageFontWidth()
PDFont
getAverageFontWidth
in interface PDFontLike
getAverageFontWidth
in class PDFont
public org.apache.fontbox.cff.CFFType1Font getCFFType1Font()
Copyright © 2002–2023 The Apache Software Foundation. All rights reserved.