## org.apache.fop.render.awt
Class AWTFontMetrics

    java.lang.Object
      |
      +--org.apache.fop.render.awt.AWTFontMetrics

public class AWTFontMetrics
extends java.lang.Object

This is a FontMetrics to be used for AWT rendering. It instanciates a font, depening on famil and style values. The java.awt.FontMetrics for this font is then created to be used for the actual measurement. Since layout is word by word and since it is expected that two subsequent words often share the same style, the Font and FontMetrics is buffered and only changed if needed.

Since FontState and FontInfo multiply all factors by size, we assume a "standard" font of FONT_SIZE.

Field Summary
`static int` `FONT_FACTOR` This factor multiplies the calculated values to scale to FOP internal measurements
`static int` `FONT_SIZE` Font size standard used for metric measurements

Constructor Summary
`AWTFontMetrics(java.awt.Component parent)` Constructs a new Font-metrics.

Method Summary
`int` `getAscender(java.lang.String family, int style, int size)` Determines the font ascent of the Font described by this FontMetrics object
`int` `getCapHeight(java.lang.String family, int style, int size)` The size of a capital letter measured from the font's baseline
`int` `getDescender(java.lang.String family, int style, int size)` Determines the font descent of the Font described by this FontMetrics object
`java.awt.Font` `getFont(java.lang.String family, int style, int size)` Returns a java.awt.Font instance for the desired family, style and size type.
`int[]` `getWidths(java.lang.String family, int style, int size)` Return widths (in 1/1000ths of point size) of all characters
`int` `getXHeight(java.lang.String family, int style, int size)` Determines the typical font height of a small cap letter FontMetrics object
`int` `width(int i, java.lang.String family, int style, int size)` Returns width (in 1/1000ths of point size) of character at code point i

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

Field Detail

### FONT_SIZE

    public static final int FONT_SIZE

  Font size standard used for metric measurements

### FONT_FACTOR

    public static final int FONT_FACTOR

  This factor multiplies the calculated values to scale to FOP internal measurements

Constructor Detail

### AWTFontMetrics

    public AWTFontMetrics(java.awt.Component parent)

  Constructs a new Font-metrics.
  Parameters:
    `parent` - an AWT component - this is needed so that we can get an instance of java.awt.FontMetrics

Method Detail

### getAscender

    public int getAscender(java.lang.String family,
                           int style,
                           int size)

  Determines the font ascent of the Font described by this FontMetrics object
  Parameters:
    `family` - font family (jave name) to use
    `style` - font style (jave def.) to use
  Returns:
    ascent in milliponts

### getCapHeight

    public int getCapHeight(java.lang.String family,
                            int style,
                            int size)

  The size of a capital letter measured from the font's baseline

### getDescender

    public int getDescender(java.lang.String family,
                            int style,
                            int size)

  Determines the font descent of the Font described by this FontMetrics object
  Parameters:
    `family` - font family (jave name) to use
    `style` - font style (jave def.) to use
  Returns:
    descent in milliponts

### getXHeight

    public int getXHeight(java.lang.String family,
                          int style,
                          int size)

  Determines the typical font height of a small cap letter FontMetrics object
  Parameters:
    `family` - font family (jave name) to use
    `style` - font style (jave def.) to use
  Returns:
    font height in milliponts

### width

    public int width(int i,
                     java.lang.String family,
                     int style,
                     int size)

  Returns width (in 1/1000ths of point size) of character at code point i
  Parameters:
    `i` - the character for which to get the width
    `family` - font family (jave name) to use
    `style` - font style (jave def.) to use
    `size` - the of the font

### getWidths

    public int[] getWidths(java.lang.String family,
                           int style,
                           int size)

  Return widths (in 1/1000ths of point size) of all characters
  Parameters:
    `family` - font family (jave name) to use
    `style` - font style (jave def.) to use

### getFont

    public java.awt.Font getFont(java.lang.String family,
                                 int style,
                                 int size)

  Returns a java.awt.Font instance for the desired family, style and size type. This is here, so that the font-mapping of FOP-defined fonts to java-fonts can be done in one place and does not need to occur in AWTFontRenderer.
  Parameters:
    `family` - font family (jave name) to use
    `style` - font style (jave def.) to use
    `size` - font size
  Returns:
    font with the desired characeristics.

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