Module java.desktop
Package java.awt.font

Interface MultipleMaster


public interface MultipleMaster
The MultipleMaster interface represents Type 1 Multiple Master fonts. A particular Font object can implement this interface.
  • Method Summary

    Modifier and Type Method Description
    Font deriveMMFont​(float[] axes)
    Creates a new instance of a multiple master font based on the design axis values contained in the specified array.
    Font deriveMMFont​(float[] glyphWidths, float avgStemWidth, float typicalCapHeight, float typicalXHeight, float italicAngle)
    Creates a new instance of a multiple master font based on detailed metric information.
    float[] getDesignAxisDefaults()
    Returns an array of default design values for each axis.
    String[] getDesignAxisNames()
    Returns the name for each design axis.
    float[] getDesignAxisRanges()
    Returns an array of design limits interleaved in the form [from→to] for each axis.
    int getNumDesignAxes()
    Returns the number of multiple master design controls.
  • Method Details

    • getNumDesignAxes

      int getNumDesignAxes()
      Returns the number of multiple master design controls. Design axes include things like width, weight and optical scaling.
      Returns:
      the number of multiple master design controls
    • getDesignAxisRanges

      float[] getDesignAxisRanges()
      Returns an array of design limits interleaved in the form [from→to] for each axis. For example, design limits for weight could be from 0.1 to 1.0. The values are returned in the same order returned by getDesignAxisNames.
      Returns:
      an array of design limits for each axis.
    • getDesignAxisDefaults

      float[] getDesignAxisDefaults()
      Returns an array of default design values for each axis. For example, the default value for weight could be 1.6. The values are returned in the same order returned by getDesignAxisNames.
      Returns:
      an array of default design values for each axis.
    • getDesignAxisNames

      String[] getDesignAxisNames()
      Returns the name for each design axis. This also determines the order in which the values for each axis are returned.
      Returns:
      an array containing the names of each design axis.
    • deriveMMFont

      Font deriveMMFont​(float[] axes)
      Creates a new instance of a multiple master font based on the design axis values contained in the specified array. The size of the array must correspond to the value returned from getNumDesignAxes and the values of the array elements must fall within limits specified by getDesignAxesLimits. In case of an error, null is returned.
      Parameters:
      axes - an array containing axis values
      Returns:
      a Font object that is an instance of MultipleMaster and is based on the design axis values provided by axes.
    • deriveMMFont

      Font deriveMMFont​(float[] glyphWidths, float avgStemWidth, float typicalCapHeight, float typicalXHeight, float italicAngle)
      Creates a new instance of a multiple master font based on detailed metric information. In case of an error, null is returned.
      Parameters:
      glyphWidths - an array of floats representing the desired width of each glyph in font space
      avgStemWidth - the average stem width for the overall font in font space
      typicalCapHeight - the height of a typical upper case char
      typicalXHeight - the height of a typical lower case char
      italicAngle - the angle at which the italics lean, in degrees counterclockwise from vertical
      Returns:
      a Font object that is an instance of MultipleMaster and is based on the specified metric information.