Class Font


  • @API(type=EXTENDABLE,
         src=PRIVATE)
    public class Font
    extends java.lang.Object
    Font common class.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int BOLD
      The bold style constant.
      static int ITALIC
      The italicized style constant.
      static int PLAIN
      The plain style constant.
    • Constructor Summary

      Constructors 
      Constructor Description
      Font​(java.lang.String name, int style, int size)
      Creates a new Font from the specified name, style and point size.
      Font​(java.lang.String name, int style, int size, int letterSpacing)
      Creates a new Font from the specified name, style and point size.
      Font​(java.lang.String name, int style, int size, int letterSpacing, java.lang.String[] fontFamilies)
      Creates a new Font from the specified name, style and point size.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static Font decodeFont​(java.lang.String value)
      Decodes a font property value, having the format "name,style,size"
      static java.lang.String encodeFont​(Font font)
      Encodes a font as: "name,style,size"
      boolean equals​(java.lang.Object obj)
      Checks if the two colors have the same RGB value.
      java.lang.String[] getFontNames()
      Get the array of font names.
      int getLetterSpacing()
      Get the letter spacing.
      java.lang.String getName()  
      int getSize()  
      int getStyle()  
      java.lang.String hash()  
      static java.lang.String hash​(java.lang.String[] fontNames, int style, int size, int letterSpacing)
      Hash the font
      static java.lang.String hash​(java.lang.String name, int style, int size)
      Hash the font
      static java.lang.String hash​(java.lang.String fontFamily, int style, int size, int letterSpacing)
      Hash the font
      int hashCode()  
      boolean isBold()
      Indicates whether or not this Font object's style is BOLD.
      boolean isItalic()
      Indicates whether or not this Font object's style is ITALIC.
      boolean isPlain()
      Indicates whether or not this Font object's style is PLAIN.
      java.lang.String toString()
      Converts this Font object to a String representation.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • BOLD

        public static final int BOLD
        The bold style constant. This can be combined with the other style constants (except PLAIN) for mixed styles.
        See Also:
        Constant Field Values
      • ITALIC

        public static final int ITALIC
        The italicized style constant. This can be combined with the other style constants (except PLAIN) for mixed styles.
        See Also:
        Constant Field Values
    • Constructor Detail

      • Font

        public Font​(java.lang.String name,
                    int style,
                    int size)
        Creates a new Font from the specified name, style and point size.
        Parameters:
        name - the font name. This can be a logical font name or a font face name. A logical name must be either: Dialog, DialogInput, Monospaced, Serif, or SansSerif. If name is null, the name of the new Font is set to the name "Default".
        style - the style constant for the Font The style argument is an integer bitmask that may be PLAIN, or a bitwise union of BOLD and/or ITALIC (for example, ITALIC or BOLD|ITALIC).
        size - the point size of the Font
      • Font

        public Font​(java.lang.String name,
                    int style,
                    int size,
                    int letterSpacing)
        Creates a new Font from the specified name, style and point size.
        Parameters:
        name - the font name. This can be a logical font name or a font face name. A logical name must be either: Dialog, DialogInput, Monospaced, Serif, or SansSerif. If name is null, the name of the new Font is set to the name "Default".
        style - the style constant for the Font The style argument is an integer bitmask that may be PLAIN, or a bitwise union of BOLD and/or ITALIC (for example, ITALIC or BOLD|ITALIC).
        size - the point size of the Font
        letterSpacing - MThe amount of advance pixels. Default is "0".
      • Font

        public Font​(java.lang.String name,
                    int style,
                    int size,
                    int letterSpacing,
                    java.lang.String[] fontFamilies)
        Creates a new Font from the specified name, style and point size.
        Parameters:
        name - the font name. This can be a logical font name or a font face name. A logical name must be either: Dialog, DialogInput, Monospaced, Serif, or SansSerif. If name is null, the name of the new Font is set to the name "Default".
        style - the style constant for the Font The style argument is an integer bitmask that may be PLAIN, or a bitwise union of BOLD and/or ITALIC (for example, ITALIC or BOLD|ITALIC).
        size - the point size of the Font
        letterSpacing - MThe amount of advance pixels. Default is "0".
        fontFamilies - The array of font families. The first entry from the array should be the same as the name parameter (the main font family name). The next entries are fallback family names, used when the main font does not support all the glyphs. This is cloned, for immutability.
    • Method Detail

      • getName

        public java.lang.String getName()
        Returns:
        The name
      • getSize

        public int getSize()
        Returns:
        The size
      • getStyle

        public int getStyle()
        Returns:
        The style
      • getLetterSpacing

        public int getLetterSpacing()
        Get the letter spacing.
        Returns:
        Returns the letterSpacing.
      • toString

        public java.lang.String toString()
        Converts this Font object to a String representation.
        Overrides:
        toString in class java.lang.Object
        Returns:
        a String representation of this Font object.
      • isPlain

        public boolean isPlain()
        Indicates whether or not this Font object's style is PLAIN.
        Returns:
        true if this Font has a PLAIN sytle; false otherwise.
        See Also:
        Font.getStyle()
      • isBold

        public boolean isBold()
        Indicates whether or not this Font object's style is BOLD.
        Returns:
        true if this Font object's style is BOLD; false otherwise.
        See Also:
        Font.getStyle()
      • isItalic

        public boolean isItalic()
        Indicates whether or not this Font object's style is ITALIC.
        Returns:
        true if this Font object's style is ITALIC; false otherwise.
        See Also:
        Font.getStyle()
      • hash

        public java.lang.String hash()
        Returns:
        A hash of the font
      • hash

        public static final java.lang.String hash​(java.lang.String name,
                                                  int style,
                                                  int size)
        Hash the font
        Parameters:
        name - The the font main family one
        style - Style
        size - Size
        Returns:
        The hash
      • hash

        public static final java.lang.String hash​(java.lang.String fontFamily,
                                                  int style,
                                                  int size,
                                                  int letterSpacing)
        Hash the font
        Parameters:
        fontFamily - The the font main family one
        style - Style
        size - Size
        letterSpacing - Letter spacing in pixels
        Returns:
        The hash
      • hash

        public static final java.lang.String hash​(java.lang.String[] fontNames,
                                                  int style,
                                                  int size,
                                                  int letterSpacing)
        Hash the font
        Parameters:
        fontNames - The list of font names, the main one and the fallback ones.
        style - Style
        size - Size
        letterSpacing - Letter spacing in pixels
        Returns:
        The hash
      • equals

        public boolean equals​(java.lang.Object obj)
        Checks if the two colors have the same RGB value. The alpha is also taken into account.
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
        See Also:
        Object.hashCode()
      • encodeFont

        public static java.lang.String encodeFont​(Font font)
        Encodes a font as: "name,style,size"
        Parameters:
        font - The font to be encoded.
        Returns:
        The encoded value.
      • decodeFont

        public static Font decodeFont​(java.lang.String value)
        Decodes a font property value, having the format "name,style,size"
        Parameters:
        value - The value to be decoded.
        Returns:
        The font.
      • getFontNames

        public java.lang.String[] getFontNames()
        Get the array of font names. The first entry from the array should be the same as the name parameter (the main font family name). The next entries are fallback family names, used when the main font does not support all the glyphs.
        Returns:
        The entire list of font names, including the main one (on the first position), and the fallback ones.