fop 0.94

org.apache.fop.render.java2d
Class FontMetricsMapper

java.lang.Object
  extended by org.apache.fop.fonts.Typeface
      extended by org.apache.fop.render.java2d.FontMetricsMapper
All Implemented Interfaces:
FontMetrics

public class FontMetricsMapper
extends Typeface
implements FontMetrics

This class implements org.apache.fop.layout.FontMetrics and is added to the hash table in FontInfo. It deferes the actual calculation of the metrics to Java2DFontMetrics. It only keeps the java name and style as member varibles


Constructor Summary
FontMetricsMapper(java.lang.String family, int style, java.awt.Graphics2D graphics)
          Constructs a new Font-metrics.
 
Method Summary
 int getAscender(int size)
          Returns the ascent of the font described by this FontMetrics object.
 int getCapHeight(int size)
          Returns the size of a capital letter measured from the font's baseline.
 int getDescender(int size)
          Returns the descent of the font described by this FontMetrics object.
 java.lang.String getEncoding()
          Get the encoding of the font.
 java.awt.Font getFont(int size)
          Gets a Font instance of the Font that this FontMetrics describes in the desired size.
 java.lang.String getFontName()
          Returns the font name.
 FontType getFontType()
          Returns the type of the font.
 java.util.Map getKerningInfo()
          Returns the kerning map for the font.
 int getMaxAscent(int size)
          Returns the maximum ascent of the font described by this FontMetrics object.
 int getWidth(int i, int size)
          Return the width (in 1/1000ths of point size) of the character at code point i.
 int[] getWidths()
          Return the array of widths.
 int getXHeight(int size)
          Determines the typical font height of this FontMetrics object
 boolean hasChar(char c)
          Determines whether this font contains a particular character/glyph.
 boolean hasKerningInfo()
          Indicates if the font has kering information.
 char mapChar(char c)
          Map a Unicode character to a code point in the font.
 
Methods inherited from class org.apache.fop.fonts.Typeface
isMultiByte
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FontMetricsMapper

public FontMetricsMapper(java.lang.String family,
                         int style,
                         java.awt.Graphics2D graphics)
Constructs a new Font-metrics.

Parameters:
family - the family name of the font (java value)
style - the java type style value of the font
graphics - a Graphics2D object - this is needed so that we can get an instance of java.awt.FontMetrics
Method Detail

getFontName

public java.lang.String getFontName()
Description copied from interface: FontMetrics
Returns the font name.

Specified by:
getFontName in interface FontMetrics
Returns:
the font name
See Also:
FontMetrics.getFontName()

getFontType

public FontType getFontType()
Description copied from interface: FontMetrics
Returns the type of the font.

Specified by:
getFontType in interface FontMetrics
Returns:
the font type
See Also:
FontMetrics.getFontType()

getMaxAscent

public int getMaxAscent(int size)
Description copied from interface: FontMetrics
Returns the maximum ascent of the font described by this FontMetrics object. Note: This is not the same as getAscender().

Specified by:
getMaxAscent in interface FontMetrics
Overrides:
getMaxAscent in class Typeface
Parameters:
size - font size
Returns:
ascent in milliponts
See Also:
FontMetrics.getMaxAscent(int)

getAscender

public int getAscender(int size)
Description copied from interface: FontMetrics
Returns the ascent of the font described by this FontMetrics object. It returns the nominal ascent within the em box.

Specified by:
getAscender in interface FontMetrics
Parameters:
size - font size
Returns:
ascent in milliponts
See Also:
FontMetrics.getAscender(int)

getCapHeight

public int getCapHeight(int size)
Description copied from interface: FontMetrics
Returns the size of a capital letter measured from the font's baseline.

Specified by:
getCapHeight in interface FontMetrics
Parameters:
size - font size
Returns:
height of capital characters
See Also:
FontMetrics.getCapHeight(int)

getDescender

public int getDescender(int size)
Description copied from interface: FontMetrics
Returns the descent of the font described by this FontMetrics object.

Specified by:
getDescender in interface FontMetrics
Parameters:
size - font size
Returns:
descent in milliponts
See Also:
FontMetrics.getDescender(int)

getXHeight

public int getXHeight(int size)
Description copied from interface: FontMetrics
Determines the typical font height of this FontMetrics object

Specified by:
getXHeight in interface FontMetrics
Parameters:
size - font size
Returns:
font height in millipoints
See Also:
FontMetrics.getXHeight(int)

getWidth

public int getWidth(int i,
                    int size)
Description copied from interface: FontMetrics
Return the width (in 1/1000ths of point size) of the character at code point i.

Specified by:
getWidth in interface FontMetrics
Parameters:
i - code point index
size - font size
Returns:
the width of the character
See Also:
FontMetrics.getWidth(int, int)

getWidths

public int[] getWidths()
Description copied from interface: FontMetrics
Return the array of widths.

This is used to get an array for inserting in an output format. It should not be used for lookup.

Specified by:
getWidths in interface FontMetrics
Returns:
an array of widths
See Also:
FontMetrics.getWidths()

getFont

public java.awt.Font getFont(int size)
Gets a Font instance of the Font that this FontMetrics describes in the desired size.

Parameters:
size - font size
Returns:
font with the desired characeristics.

getKerningInfo

public java.util.Map getKerningInfo()
Description copied from interface: FontMetrics
Returns the kerning map for the font.

Specified by:
getKerningInfo in interface FontMetrics
Returns:
the kerning map
See Also:
FontMetrics.getKerningInfo()

hasKerningInfo

public boolean hasKerningInfo()
Description copied from interface: FontMetrics
Indicates if the font has kering information.

Specified by:
hasKerningInfo in interface FontMetrics
Returns:
True, if kerning is available.
See Also:
FontMetrics.hasKerningInfo()

getEncoding

public java.lang.String getEncoding()
Description copied from class: Typeface
Get the encoding of the font.

Specified by:
getEncoding in class Typeface
Returns:
the encoding
See Also:
Typeface.getEncoding()

mapChar

public char mapChar(char c)
Description copied from class: Typeface
Map a Unicode character to a code point in the font.

Specified by:
mapChar in class Typeface
Parameters:
c - character to map
Returns:
the mapped character
See Also:
Typeface.mapChar(char)

hasChar

public boolean hasChar(char c)
Description copied from class: Typeface
Determines whether this font contains a particular character/glyph.

Specified by:
hasChar in class Typeface
Parameters:
c - character to check
Returns:
True if the character is supported, Falso otherwise
See Also:
Typeface.hasChar(char)

fop 0.94

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