X-Git-Url: https://git.immae.eu/?p=perso%2FImmae%2FProjets%2FPython%2FMusicSampler.git;a=blobdiff_plain;f=helpers%2F__init__.py;h=4827e6c1af392acf8614008c1e1d9749e54a0190;hp=f1a968b298065dddfebe5c52649507fffd891111;hb=35bde798b6cda13579337b0ec5a803fdd5eab19a;hpb=cfde9820184a3b70c70bcf396c396a4c64fa9a39 diff --git a/helpers/__init__.py b/helpers/__init__.py index f1a968b..4827e6c 100644 --- a/helpers/__init__.py +++ b/helpers/__init__.py @@ -6,9 +6,43 @@ import math import sounddevice as sd import logging +from . import sysfont + class Config: pass +def find_font(name, style=sysfont.STYLE_NONE): + if getattr(sys, 'frozen', False): + font = sys._MEIPASS + "/fonts/{}_{}.ttf".format(name, style) + else: + font = sysfont.get_font(name, style=style) + if font is not None: + font = font[4] + return font + +def register_fonts(): + from kivy.core.text import LabelBase + + ubuntu_regular = find_font("Ubuntu", style=sysfont.STYLE_NORMAL) + ubuntu_bold = find_font("Ubuntu", style=sysfont.STYLE_BOLD) + symbola = find_font("Symbola") + + if ubuntu_regular is None: + error_print("Font Ubuntu regular could not be found, please install it.") + sys.exit() + if symbola is None: + error_print("Font Symbola could not be found, please install it.") + sys.exit() + if ubuntu_bold is None: + warn_print("Font Ubuntu Bold could not be found.") + + LabelBase.register(name="Ubuntu", + fn_regular=ubuntu_regular, + fn_bold=ubuntu_bold) + LabelBase.register(name="Symbola", + fn_regular=symbola) + + def path(): if getattr(sys, 'frozen', False): return sys._MEIPASS + "/"