Class PFMFile

java.lang.Object
org.apache.fop.fonts.type1.PFMFile

public class PFMFile extends Object
This class represents a PFM file (or parts of it) as a Java object.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected org.apache.commons.logging.Log
    logging instance
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    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 character
    short
    Returns the number of the character that defines the first entry in the widths list.
    int
    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
    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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • log

      protected org.apache.commons.logging.Log log
      logging instance
  • Constructor Details

    • PFMFile

      public PFMFile()
  • Method Details

    • load

      public void load(InputStream inStream) throws IOException
      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

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

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

      public 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 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.
    • 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.