Class CommonFont


  • public final class CommonFont
    extends java.lang.Object
    Collection of CommonFont properties
    • Field Detail

      • CACHE

        private static final PropertyCache<CommonFont> CACHE
        cache holding canonical CommonFont instances (only those with absolute font-size and font-size-adjust)
      • hash

        private int hash
        hashcode of this instance
      • fontSelectionStrategy

        private final EnumProperty fontSelectionStrategy
        The "font-selection-strategy" property.
      • fontStretch

        private final EnumProperty fontStretch
        The "font-stretch" property.
      • fontStyle

        private final EnumProperty fontStyle
        The "font-style" property.
      • fontVariant

        private final EnumProperty fontVariant
        The "font-variant" property.
      • fontWeight

        private final EnumProperty fontWeight
        The "font-weight" property.
      • fontSize

        public final Length fontSize
        The "font-size" property.
      • fontSizeAdjust

        public final Numeric fontSizeAdjust
        The "font-size-adjust" property.
    • Constructor Detail

      • CommonFont

        private CommonFont​(FontFamilyProperty fontFamily,
                           EnumProperty fontSelectionStrategy,
                           EnumProperty fontStretch,
                           EnumProperty fontStyle,
                           EnumProperty fontVariant,
                           EnumProperty fontWeight,
                           Length fontSize,
                           Numeric fontSizeAdjust)
        Construct a CommonFont instance
        Parameters:
        fontFamily - the font-family property
        fontSelectionStrategy - the font-selection-strategy property
        fontStretch - the font-stretch property
        fontStyle - the font-style property
        fontVariant - the font-variant property
        fontWeight - the font-weight property
        fontSize - the font-size (possibly non-cached)
        fontSizeAdjust - the font-size-adjust (possibly non-cached)
    • Method Detail

      • getInstance

        public static CommonFont getInstance​(PropertyList pList)
                                      throws PropertyException
        Returns a CommonFont instance for the given PropertyList If the font-size and font-size-adjust properties are absolute the entire instance will be cached. If not, then a distinct instance will be returned, with as much cached information as possible.
        Parameters:
        pList - the PropertyList to get the properties from
        Returns:
        a CommonFont instance corresponding to the properties
        Throws:
        PropertyException - if there was a problem getting the properties
      • getFontFamily

        private java.lang.String[] getFontFamily()
        Returns:
        an array with the font-family names
      • getFirstFontFamily

        public java.lang.String getFirstFontFamily()
        Returns:
        the first font-family name in the list
      • getFontSelectionStrategy

        public int getFontSelectionStrategy()
        Returns:
        the "font-selection-strategy" property
      • getFontStretch

        public int getFontStretch()
        Returns:
        the "font-stretch" property
      • getFontStyle

        public int getFontStyle()
        Returns:
        the "font-style" property
      • getFontVariant

        public int getFontVariant()
        Returns:
        the "font-variant" property
      • getFontWeight

        public int getFontWeight()
        Returns:
        the "font-weight" property
      • getFontSize

        public Length getFontSize()
        Returns:
        the "font-size" property.
      • getFontSizeAdjust

        public Numeric getFontSizeAdjust()
        Returns:
        the "font-size-adjust" property.
      • getFontState

        public FontTriplet[] getFontState​(FontInfo fontInfo)
        Create and return an array of FontTriplets based on the properties stored in the instance variables.
        Parameters:
        fontInfo - a font info object
        Returns:
        a font triplet
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object