Package org.apache.fop.fonts.type1
Class PFMFile
java.lang.Object
org.apache.fop.fonts.type1.PFMFile
This class represents a PFM file (or parts of it) as a Java object.
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
Returns the CapHeight parameter for the font (height of uppercase H).short
Returns the charset used for the font.Returns the charset of the font as a string.int
getCharWidth
(short which) Returns the width of a charactershort
Returns the number of the character that defines the first entry in the widths list.int
getFlags()
Returns the characteristics flags for the font as needed for a PDF font descriptor (See PDF specs).int[]
Returns the bounding box for the font.boolean
Tells whether the font has proportional character spacing.int
Returns the italic angle of the font.Return the kerning table.short
Returns the number of the character that defines the last entry in the widths list.int
Returns the LowerCaseAscent parameter for the font (height of lowercase d).int
Returns the LowerCaseDescent parameter for the font (height of lowercase p).Returns the Postscript name of the font.int
getStemV()
Returns the width of the dominant vertical stems of the font.Returns the Windows name of the font.int
Returns the XHeight parameter for the font (height of lowercase x).boolean
Indicates whether the font is non-symbolic (Font uses the Adobe standard Latin character set or a subset of it).void
load
(InputStream inStream) Parses a PFM file
-
Field Details
-
log
protected org.apache.commons.logging.Log loglogging instance
-
-
Constructor Details
-
PFMFile
public PFMFile()
-
-
Method Details
-
load
Parses a PFM file- Parameters:
inStream
- The stream from which to read the PFM file.- Throws:
IOException
- In case of an I/O problem
-
getWindowsName
Returns the Windows name of the font.- Returns:
- The Windows name.
-
getKerning
Return the kerning table. The kerning table is a Map with strings with glyphnames as keys, containing Maps as value. The value map contains a glyph name string key and an Integer value- Returns:
- A Map containing the kerning table
-
getPostscriptName
Returns the Postscript name of the font.- Returns:
- The Postscript name.
-
getCharSet
public short getCharSet()Returns the charset used for the font.- Returns:
- The charset (0=WinAnsi).
-
getCharSetName
Returns the charset of the font as a string.- Returns:
- The name of the charset.
-
getFirstChar
public short getFirstChar()Returns the number of the character that defines the first entry in the widths list.- Returns:
- The number of the first character.
-
getLastChar
public short getLastChar()Returns the number of the character that defines the last entry in the widths list.- Returns:
- The number of the last character.
-
getCapHeight
public int getCapHeight()Returns the CapHeight parameter for the font (height of uppercase H).- Returns:
- The CapHeight parameter.
-
getXHeight
public int getXHeight()Returns the XHeight parameter for the font (height of lowercase x).- Returns:
- The CapHeight parameter.
-
getLowerCaseAscent
public int getLowerCaseAscent()Returns the LowerCaseAscent parameter for the font (height of lowercase d).- Returns:
- The LowerCaseAscent parameter.
-
getLowerCaseDescent
public int getLowerCaseDescent()Returns the LowerCaseDescent parameter for the font (height of lowercase p).- Returns:
- The LowerCaseDescent parameter.
-
getIsProportional
public boolean getIsProportional()Tells whether the font has proportional character spacing.- Returns:
- ex. true for Times, false for Courier.
-
getFontBBox
public int[] getFontBBox()Returns the bounding box for the font. Note: this value is just an approximation, it does not really exist in the PFM file.- Returns:
- The calculated Font BBox.
-
isNonSymbolic
public boolean isNonSymbolic()Indicates whether the font is non-symbolic (Font uses the Adobe standard Latin character set or a subset of it).- Returns:
- true if the font is non-symbolic
-
getFlags
public int getFlags()Returns the characteristics flags for the font as needed for a PDF font descriptor (See PDF specs).- Returns:
- The characteristics flags.
-
getStemV
public int getStemV()Returns the width of the dominant vertical stems of the font. Note: this value is just an approximation, it does not really exist in the PFM file.- Returns:
- The vertical stem width.
-
getItalicAngle
public int getItalicAngle()Returns the italic angle of the font. Note: this value is just an approximation, it does not really exist in the PFM file.- Returns:
- The italic angle.
-
getCharWidth
public int getCharWidth(short which) Returns the width of a character- Parameters:
which
- The number of the character for which the width is requested.- Returns:
- The width of a character.
-