org.pentaho.reporting.libraries.fonts.afm
Class AfmFontRegistry

java.lang.Object
  extended by org.pentaho.reporting.libraries.fonts.registry.AbstractFontFileRegistry
      extended by org.pentaho.reporting.libraries.fonts.afm.AfmFontRegistry
All Implemented Interfaces:
FontRegistry

public class AfmFontRegistry
extends AbstractFontFileRegistry

Creation-Date: 21.07.2007, 20:14:05

Author:
Thomas Morgner

Constructor Summary
AfmFontRegistry()
           
 
Method Summary
 boolean addFont(java.io.File font, java.lang.String encoding)
          Adds the fontname by creating the basefont object.
 FontMetricsFactory createMetricsFactory()
          Creates a new font metrics factory.
 java.lang.String[] getAllRegisteredFamilies()
           
 FontFamily getFontFamily(java.lang.String name)
          Tries to find a font family with the given name, looking through all alternative font names if neccessary.
 java.lang.String[] getRegisteredFamilies()
           
 FontCache getSecondLevelCache()
           
 
Methods inherited from class org.pentaho.reporting.libraries.fonts.registry.AbstractFontFileRegistry
initialize, registerDefaultFontPath, registerFontFile, registerFontFile, registerFontPath
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AfmFontRegistry

public AfmFontRegistry()
Method Detail

createMetricsFactory

public FontMetricsFactory createMetricsFactory()
Description copied from interface: FontRegistry
Creates a new font metrics factory. That factory is specific to a certain font registry and is not required to handle font records from foreign font registries. A font metrics factory should never be used on its own. It should be embedded into and used by a FontStorage implementation.

Returns:

getSecondLevelCache

public FontCache getSecondLevelCache()

addFont

public boolean addFont(java.io.File font,
                       java.lang.String encoding)
                throws java.io.IOException
Adds the fontname by creating the basefont object. This method tries to load the fonts as embeddable fonts, if this fails, it repeats the loading with the embedded-flag set to false.

Parameters:
font - the font file name.
encoding - the encoding.
Throws:
java.io.IOException - if the base font file could not be read.

getRegisteredFamilies

public java.lang.String[] getRegisteredFamilies()

getAllRegisteredFamilies

public java.lang.String[] getAllRegisteredFamilies()

getFontFamily

public FontFamily getFontFamily(java.lang.String name)
Description copied from interface: FontRegistry
Tries to find a font family with the given name, looking through all alternative font names if neccessary.

Returns:
the font family or null, if there is no such family.