default_theme_builders.py 610 B

12345678910111213141516171819202122
  1. """Functions used to generate source files during build time"""
  2. import os
  3. import methods
  4. def make_fonts_header(target, source, env):
  5. with methods.generated_wrapper(str(target[0])) as file:
  6. for src in map(str, source):
  7. # Saving uncompressed, since FreeType will reference from memory pointer.
  8. buffer = methods.get_buffer(src)
  9. name = os.path.splitext(os.path.basename(src))[0]
  10. file.write(f"""\
  11. inline constexpr int _font_{name}_size = {len(buffer)};
  12. inline constexpr unsigned char _font_{name}[] = {{
  13. {methods.format_buffer(buffer, 1)}
  14. }};
  15. """)