FopCharacterSet (Apache FOP Core 2.11 API)
Date: 2025-04-24

org.apache.fop.afp.fonts

## Class FopCharacterSet

- java.lang.Object
- - org.apache.fop.afp.fonts.CharacterSet
  - - org.apache.fop.afp.fonts.FopCharacterSet

-     public class FopCharacterSet
      extends CharacterSet

  A Character set for a normal FOP font

- - ### Field Summary

    - ### Fields inherited from class org.apache.fop.afp.fonts.CharacterSet

      `codePage, DEFAULT_CODEPAGE, DEFAULT_ENCODING, encoding, LOG, name, SUPPORTED_ORIENTATION`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `FopCharacterSet(String codePage, String encoding, String name, Typeface charSet, AFPEventProducer eventProducer)` Constructor for the CharacterSetMetric object, the character set is used to load the font information from the actual AFP font.
    `FopCharacterSet(String codePage, String encoding, String name, Typeface charSet, AFPResourceAccessor accessor, AFPEventProducer eventProducer)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getAscender()` Ascender height is the distance from the character baseline to the top of the character box.
    `int` | `getCapHeight()` Cap height is the average height of the uppercase characters in a font.
    `Rectangle` | `getCharacterBox(char character, int size)`
    `int` | `getDescender()` Descender depth is the distance from the character baseline to the bottom of a character box.
    `int` | `getUnderscorePosition()` Return the position for an underscore (_) character.
    `int` | `getUnderscoreWidth()` Return the width to use for an underscore (_) character.
    `int` | `getWidth(char character, int size)` Get the width (in 1/1000ths of a point size) of the character identified by the parameter passed.
    `int` | `getXHeight()` XHeight refers to the height of the lower case letters above the baseline.
    `char` | `mapChar(char c)` Map a Unicode character to a code point in the font.

    - ### Methods inherited from class org.apache.fop.afp.fonts.CharacterSet

      `addCharacterSetOrientation, encodeChars, getCodePage, getEmSpaceIncrement, getEncoding, getName, getNameBytes, getNominalCharIncrement, getNominalVerticalSize, getResourceAccessor, getSpaceIncrement, hasChar, setNominalVerticalSize`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### FopCharacterSet

          public FopCharacterSet(String codePage,
                                 String encoding,
                                 String name,
                                 Typeface charSet,
                                 AFPEventProducer eventProducer)

      Constructor for the CharacterSetMetric object, the character set is used to load the font information from the actual AFP font.
      Parameters:
        `codePage` - the code page identifier
        `encoding` - the encoding of the font
        `name` - the character set name
        `charSet` - the fop character set
        `eventProducer` - for handling AFP related events

    - #### FopCharacterSet

          public FopCharacterSet(String codePage,
                                 String encoding,
                                 String name,
                                 Typeface charSet,
                                 AFPResourceAccessor accessor,
                                 AFPEventProducer eventProducer)

  - ### Method Detail

    - #### getAscender

          public int getAscender()

      Ascender height is the distance from the character baseline to the top of the character box. A negative ascender height signifies that all of the graphic character is below the character baseline. For a character rotation other than 0, ascender height loses its meaning when the character is lying on its side or is upside down with respect to normal viewing orientation. For the general case, Ascender Height is the character's most positive y-axis value. For bounded character boxes, for a given character having an ascender, ascender height and baseline offset are equal.
      Overrides:
        `getAscender` in class `CharacterSet`
      Returns:
        the ascender value in millipoints

    - #### getCapHeight

          public int getCapHeight()

      Cap height is the average height of the uppercase characters in a font. This value is specified by the designer of a font and is usually the height of the uppercase M.
      Overrides:
        `getCapHeight` in class `CharacterSet`
      Returns:
        the cap height value in millipoints

    - #### getDescender

          public int getDescender()

      Descender depth is the distance from the character baseline to the bottom of a character box. A negative descender depth signifies that all of the graphic character is above the character baseline.
      Overrides:
        `getDescender` in class `CharacterSet`
      Returns:
        the descender value in millipoints

    - #### getXHeight

          public int getXHeight()

      XHeight refers to the height of the lower case letters above the baseline.
      Overrides:
        `getXHeight` in class `CharacterSet`
      Returns:
        the typical height of characters

    - #### getWidth

          public int getWidth(char character,
                              int size)

      Description copied from class: `CharacterSet`
      Get the width (in 1/1000ths of a point size) of the character identified by the parameter passed.
      Overrides:
        `getWidth` in class `CharacterSet`
      Parameters:
        `character` - the Unicode character from which the width will be calculated
        `size` - the font size
      Returns:
        the width of the character

    - #### getCharacterBox

          public Rectangle getCharacterBox(char character,
                                           int size)

      Overrides:
        `getCharacterBox` in class `CharacterSet`

    - #### getUnderscoreWidth

          public int getUnderscoreWidth()

      Description copied from class: `CharacterSet`
      Return the width to use for an underscore (_) character.
      Overrides:
        `getUnderscoreWidth` in class `CharacterSet`
      Returns:
        the width of an underscore character

    - #### getUnderscorePosition

          public int getUnderscorePosition()

      Description copied from class: `CharacterSet`
      Return the position for an underscore (_) character.
      Overrides:
        `getUnderscorePosition` in class `CharacterSet`
      Returns:
        the position of an underscore character

    - #### mapChar

          public char mapChar(char c)

      Map a Unicode character to a code point in the font.
      Overrides:
        `mapChar` in class `CharacterSet`
      Parameters:
        `c` - character to map
      Returns:
        the mapped character

Copyright © 2025 Apache Software Foundation. All rights reserved.