Class FontPolicies


  • public final class FontPolicies
    extends java.lang.Object
    Provides predefined FontPolicy implementations.

    Note: The available policies work well on Windows. On other platforms the fonts specified by the runtime environment are chosen. I plan to provide more logic or options for other platforms, for example that a Linux system checks for a Tahoma or Segoe UI.

    TODO: Add a check for a custom font policy set in the System properties.

    TODO: Add policies that emulate different Windows setups: default XP on 96dpi with normal fonts ("XP-normal-96"), Vista on 120dpi with large fonts ("Vista-large-120"), etc.

    Since:
    2.0
    See Also:
    FontPolicy, FontSet, FontSets, Fonts
    • Constructor Detail

      • FontPolicies

        private FontPolicies()
    • Method Detail

      • createFixedPolicy

        public static FontPolicy createFixedPolicy​(FontSet fontSet)
        Returns a font policy that in turn always returns the specified FontSet. The FontSet will be fixed, but the FontSet itself may return different fonts in different environments.
        Parameters:
        fontSet - the FontSet to be return by this policy
        Returns:
        a font policy that returns the specified FontSet.
      • getDefaultPlasticOnWindowsPolicy

        public static FontPolicy getDefaultPlasticOnWindowsPolicy()
        Returns the default font policy for Plastic on the Windows platform. It differs from the default Windows policy in that it uses a bold font for TitledBorders, titles, and titled separators.
        Returns:
        the default font policy for Plastic on the Windows platform.
      • getDefaultPlasticPolicy

        public static FontPolicy getDefaultPlasticPolicy()
        Returns the default Plastic FontPolicy that may vary with the platform and environment. On Windows, the PlasticOnWindowsPolicy is returned that is much like the defualt WindowsPolicy but uses a bold title font. On other Platforms, the logical fonts policy is returned that uses the logical fonts as specified by the Java runtime environment.
        Returns:
        a Windows-like policy on Windows, a logical fonts policy on all other platforms
      • getDefaultWindowsPolicy

        public static FontPolicy getDefaultWindowsPolicy()
        Returns the default font policy for the Windows platform. It aims to return a FontSet that is close to the native guidelines and useful for the current Java environment.

        The control font scales with the platform screen resolution (96dpi/101dpi/120dpi/144dpi/...) and honors the desktop font settings (normal/large/extra large).

        Returns:
        the default font policy for the Windows platform.
      • getLogicalFontsPolicy

        public static FontPolicy getLogicalFontsPolicy()
        Returns a font policy that returns the logical fonts as specified by the Java runtime environment.
        Returns:
        a font policy that returns logical fonts.