86 lines
1.7 KiB
Python
86 lines
1.7 KiB
Python
# https://github.com/kelltom/OS-Bot-COLOR/
|
|
import pathlib
|
|
|
|
import customtkinter as ctk
|
|
|
|
fonts_path = pathlib.Path(__file__).parent
|
|
ctk.FontManager.load_font(str(fonts_path.joinpath("CascadiaCode.ttf")))
|
|
|
|
|
|
def get_font(family="Trebuchet MS", size=14, weight="normal", slant="roman", underline=False):
|
|
"""
|
|
Gets a font object with the given parameters. This is a wrapper for ctk.CTkFont. Provides
|
|
defaults for app theme fonts.
|
|
"""
|
|
return ctk.CTkFont(family=family, size=size, weight=weight, slant=slant, underline=underline)
|
|
|
|
|
|
def title_font():
|
|
"""
|
|
Preset for titles (largest).
|
|
"""
|
|
return get_font(size=24, weight="bold")
|
|
|
|
|
|
def heading_font(size=20):
|
|
"""
|
|
Preset for headings.
|
|
"""
|
|
return get_font(size=size, weight="bold")
|
|
|
|
|
|
def subheading_font(size=16):
|
|
"""
|
|
Preset for subheadings.
|
|
"""
|
|
return get_font(size=size, weight="bold")
|
|
|
|
|
|
def body_large_font(size=15):
|
|
"""
|
|
Preset for body text.
|
|
"""
|
|
return get_font(size=size)
|
|
|
|
|
|
def body_med_font(size=14):
|
|
"""
|
|
Preset for body text.
|
|
"""
|
|
return get_font(size=size)
|
|
|
|
|
|
def button_med_font(size=14):
|
|
"""
|
|
Preset for button text.
|
|
"""
|
|
return get_font(size=size, weight="bold")
|
|
|
|
|
|
def button_small_font(size=12):
|
|
"""
|
|
Preset for button text.
|
|
"""
|
|
return get_font(size=size, weight="bold")
|
|
|
|
|
|
def small_font(size=12):
|
|
"""
|
|
Preset for small text, such as captions or footnotes.
|
|
"""
|
|
return get_font(size=size)
|
|
|
|
|
|
def micro_font(size=10):
|
|
"""
|
|
Preset for micro text, such as version stamps.
|
|
"""
|
|
return get_font(size=size)
|
|
|
|
|
|
def log_font(size=12):
|
|
"""
|
|
Preset for log text.
|
|
"""
|
|
return get_font(family="Cascadia Code", size=size)
|