Class PFMFile

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

public class PFMFile
extends java.lang.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.slf4j.Logger log
    logging instance
  • Constructor Summary

    Constructors 
    Constructor Description
    PFMFile()  
  • Method Summary

    Modifier and Type Method Description
    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.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).
    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).
    boolean isNonSymbolic()
    Indicates whether the font is non-symbolic (Font uses the Adobe standard Latin character set or a subset of it).
    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
  • Field Details

    • log

      protected org.slf4j.Logger log
      logging instance
  • Constructor Details

  • Method Details

    • 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.
      Throws:
      java.io.IOException - In case of an I/O problem
    • getWindowsName

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

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