## org.apache.fop.fonts
Class PFMFile

    java.lang.Object
      |
      +--org.apache.fop.fonts.PFMFile

public class PFMFile
extends java.lang.Object

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

Author:
  jeremias.maerki@outline.ch

Constructor Summary
`PFMFile()`

Method Summary
`int` `getCapHeight()` Returns the CapHeight parameter for the font (height of uppercase H).
`short` `getCharSet()` Returns the charset used for the font.
`java.lang.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.
`java.util.Hashtable` `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).
`java.lang.String` `getPostscriptName()` Returns the Postscript name of the font.
`int` `getStemV()` Returns the width of the dominant vertical stems of the font.
`java.lang.String` `getWindowsName()` Returns the Windows name of the font.
`int` `getXHeight()` Returns the XHeight parameter for the font (height of lowercase x).
`void` `load(java.io.InputStream inStream)` Parses a PFM file

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### PFMFile

    public PFMFile()

Method Detail

### load

    public void load(java.io.InputStream inStream)
              throws java.io.IOException

  Parses a PFM file
  Parameters:
    `inStream` - The stream from which to read the PFM file.

### getWindowsName

    public java.lang.String getWindowsName()

  Returns the Windows name of the font.
  Returns:
    The Windows name.

### getKerning

    public java.util.Hashtable getKerning()

  Return the kerning table. The kerning table is a hastable with strings with glyphnames as keys, containing hashtables as value. The value hashtable contain a glyph name string key and an Integer value

### getPostscriptName

    public java.lang.String 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

    public java.lang.String 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.

### 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.

Copyright © 1999-2001 Apache Software Foundation. All Rights Reserved.