package com.insightfullogic.honest_profiler.ports.javafx.util; import static javafx.scene.text.Font.loadFont; import javafx.scene.text.Font; /** * Utility class for managing {@link Font}s. */ public final class FontUtil { // Class Properties private static final String PATH_OPENSANS_REGULAR = "/com/insightfullogic/honest_profiler/ports/javafx/font/OpenSans-Regular.ttf"; private static final String PATH_OPENSANS_BOLD = "/com/insightfullogic/honest_profiler/ports/javafx/font/OpenSans-Bold.ttf"; private static Font OPENSANS_REGULAR; private static Font OPENSANS_BOLD; // Class Methods /** * Loads the fonts included in the resources. * <p> * @param c a {@link Class} used for resolving the font URLs. */ public static void initialize(Class<?> c) { OPENSANS_REGULAR = loadFont(c.getResource(PATH_OPENSANS_REGULAR).toExternalForm(), 10); OPENSANS_BOLD = loadFont(c.getResource(PATH_OPENSANS_BOLD).toExternalForm(), 10); } /** * Returns the Open Sans Regular {@link Font}. * <p> * @return the Open Sans Regular {@link Font} */ public static final Font openSansRegular() { return OPENSANS_REGULAR; } /** * Returns the Open Sans Bold {@link Font}. * <p> * @return the Open Sans Bold {@link Font} */ public static final Font openSansBold() { return OPENSANS_BOLD; } // Instance Constructors /** * Private Utility Class Constructor. */ private FontUtil() { // Private Utility Class Constructor } }