Class AbstractOutlineFont

  • All Implemented Interfaces:
    FontMetrics
    Direct Known Subclasses:
    DoubleByteFont, OutlineFont

    public abstract class AbstractOutlineFont
    extends AFPFont
    A font defined as a set of lines and curves as opposed to a bitmap font. An outline font can be scaled to any size and otherwise transformed more easily than a bitmap font, and with more attractive results.
    • Constructor Detail

      • AbstractOutlineFont

        public AbstractOutlineFont​(java.lang.String name,
                                   boolean embeddable,
                                   CharacterSet charSet,
                                   AFPEventProducer eventProducer)
        Constructor for an outline font.
        Parameters:
        name - the name of the font
        embeddable - sets whether or not this font is to be embedded
        charSet - the chracter set
        eventProducer - The object to handle any events which occur from the object.
    • Method Detail

      • getCharacterSet

        public CharacterSet getCharacterSet()
        Get the character set metrics.
        Returns:
        the character set
      • getCharacterSet

        public CharacterSet getCharacterSet​(int size)
        Get the character set metrics.
        Specified by:
        getCharacterSet in class AFPFont
        Parameters:
        size - ignored
        Returns:
        the character set
      • getAscender

        public int getAscender​(int size)
        The ascender is the part of a lowercase letter that extends above the "x-height" (the height of the letter "x"), such as "d", "t", or "h". Also used to denote the part of the letter extending above the x-height.
        Parameters:
        size - the font size (in mpt)
        Returns:
        the ascender for the given size
      • getUnderlinePosition

        public int getUnderlinePosition​(int size)
        Returns the distance from the baseline to the center of the underline (negative value indicates below baseline).
        Parameters:
        size - font size
        Returns:
        the position in 1/1000ths of the font size
      • getUnderlineThickness

        public int getUnderlineThickness​(int size)
        Description copied from class: AFPFont
        Returns the thickness of the underline.
        Specified by:
        getUnderlineThickness in interface FontMetrics
        Overrides:
        getUnderlineThickness in class AFPFont
        Parameters:
        size - font size
        Returns:
        the thickness in 1/1000ths of the font size
      • getCapHeight

        public int getCapHeight​(int size)
        Obtains the height of capital letters for the specified point size.
        Parameters:
        size - the font size (in mpt)
        Returns:
        the cap height for the given size
      • getDescender

        public int getDescender​(int size)
        The descender is the part of a lowercase letter that extends below the base line, such as "g", "j", or "p". Also used to denote the part of the letter extending below the base line.
        Parameters:
        size - the font size (in mpt)
        Returns:
        the descender for the given size
      • getXHeight

        public int getXHeight​(int size)
        The "x-height" (the height of the letter "x").
        Parameters:
        size - the font size (in mpt)
        Returns:
        the x height for the given size
      • hasChar

        public boolean hasChar​(char c)
        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
      • mapChar

        public char mapChar​(char c)
        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
      • getEncodingName

        public java.lang.String getEncodingName()
        Get the encoding of the font.
        Specified by:
        getEncodingName in class Typeface
        Returns:
        the encoding