org.apache.fop.fonts.type1

Class PFMFile


public class PFMFile
extends java.lang.Object

This class represents a PFM file (or parts of it) as a Java object.

Field Summary

protected Log
log
logging instance

Method Summary

int
getCapHeight()
Returns the CapHeight parameter for the font (height of uppercase H).
short
getCharSet()
Returns the charset used for the font.
String
getCharSetName()
Returns the charset of the font as a string.
int
getCharWidth(short which)
Returns the width of a character
short
getFirstChar()
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[]
getFontBBox()
Returns the bounding box for the font.
boolean
getIsProportional()
Tells whether the font has proportional character spacing.
int
getItalicAngle()
Returns the italic angle of the font.
Map
getKerning()
Return the kerning table.
short
getLastChar()
Returns the number of the character that defines the last entry in the widths list.
int
getLowerCaseAscent()
Returns the LowerCaseAscent parameter for the font (height of lowercase d).
int
getLowerCaseDescent()
Returns the LowerCaseDescent parameter for the font (height of lowercase p).
String
getPostscriptName()
Returns the Postscript name of the font.
int
getStemV()
Returns the width of the dominant vertical stems of the font.
String
getWindowsName()
Returns the Windows name of the font.
int
getXHeight()
Returns the XHeight parameter for the font (height of lowercase x).
boolean
isNonSymbolic()
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 Log log
logging instance

Method Details

getCapHeight

public int getCapHeight()
Returns the CapHeight parameter for the font (height of uppercase H).
Returns:
The CapHeight parameter.

getCharSet

public short getCharSet()
Returns the charset used for the font.
Returns:
The charset (0=WinAnsi).

getCharSetName

public String getCharSetName()
Returns the charset of the font as a string.
Returns:
The name of the charset.

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.

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.

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.

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.

getIsProportional

public boolean getIsProportional()
Tells whether the font has proportional character spacing.
Returns:
ex. true for Times, false for Courier.

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.

getKerning

public Map 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

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.

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.

getPostscriptName

public String getPostscriptName()
Returns the Postscript name of the font.
Returns:
The Postscript name.

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.

getWindowsName

public String getWindowsName()
Returns the Windows name of the font.
Returns:
The Windows name.

getXHeight

public int getXHeight()
Returns the XHeight parameter for the font (height of lowercase x).
Returns:
The CapHeight parameter.

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

load

public void load(InputStream inStream)
            throws IOException
Parses a PFM file
Parameters:
inStream - The stream from which to read the PFM file.

Copyright 1999-2008 The Apache Software Foundation. All Rights Reserved.