v.0.4.3 fonts_check jetzt über kompletten Fonts

This commit is contained in:
tiijay
2025-10-24 17:33:03 +02:00
parent 37d5276537
commit 3c30018893
3 changed files with 74 additions and 40 deletions

View File

@@ -1,41 +1,35 @@
from app.display.fonts.fonts_utils import align_font, font_height
from app.display.fonts.fonts_utils import align_font, font_height, char_width, screen_text
from app.display.neopixel_64x64 import NeoPixel_64x64
import app.utils as utils
from app.utils import colors
def font_pretty(font):
pretty_font = align_font(font)
pretty_font = align_font(font, debug=False)
print(pretty_font)
def fonts_check(display, font, pretty=False) -> None:
def fonts_check(display: NeoPixel_64x64, font, pretty=False) -> None:
display.clear()
display.set_font(font)
height = font_height(font)
alphabet: str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
char_line_1 = alphabet[:11]
char_line_2 = alphabet[11:22]
char_line_3 = alphabet[21:]
num_line = '0123456789'
alphanum: str = ''.join(sorted(font.keys()))
row = 0
incr = height
display.write_text(num_line, 0, row)
row += incr
display.write_text(char_line_1.upper(), 0, row, utils.colors.YELLOW)
# row += incr
# display.write_text(char_line_2.upper(), 0, row, colors.YELLOW)
# row += incr
# display.write_text(char_line_3.upper(), 0, row, colors.YELLOW)
row += incr
display.write_text(char_line_1.lower(), 0, row, utils.colors.YELLOW)
# row += incr
# display.write_text(char_line_2.lower(), 0, row, colors.YELLOW)
# row += incr
# display.write_text(char_line_3.lower(), 0, row, colors.YELLOW)
row += incr
display.write_text('!.,:;\'"-_+=*/\\()~°•', 0, row, utils.colors.ORANGE)
text_left = alphanum
while text_left:
# Text entsprechend des Display splitten
scr_txt_dict = screen_text(text=text_left, screen_width=display.MATRIX_WIDTH, screen_height=display.MATRIX_HEIGHT, font=font)
print(f'scr_txt: {scr_txt_dict}')
display.clear()
for idx, row_text in enumerate(scr_txt_dict['visible']):
ypos = height * idx
# display.clear_row(ypos)
display.write_text(row_text, 0, ypos, colors.RAINBOW[idx])
text_left = scr_txt_dict['invisible']
if pretty:
font_pretty(font)