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

      All Methods Instance Methods Abstract Methods 
      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 Detail

      • 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.