From 1192005c19b9fdb28a637f65fffb25ee609af858 Mon Sep 17 00:00:00 2001 From: Chuck <33324927+ChuckBuilds@users.noreply.github.com> Date: Wed, 23 Jul 2025 11:11:35 -0500 Subject: [PATCH] baseline offset --- src/of_the_day_manager.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/of_the_day_manager.py b/src/of_the_day_manager.py index cae19069..a9f587a2 100644 --- a/src/of_the_day_manager.py +++ b/src/of_the_day_manager.py @@ -168,17 +168,19 @@ class OfTheDayManager: def _draw_bdf_text(self, draw, face, text, x, y, color=(255,255,255)): """Draw text using a BDF font loaded with freetype.""" orig_x = x + # Calculate baseline offset for proper text alignment + baseline_offset = face.size.height - face.size.ascender for char in text: face.load_char(char) bitmap = face.glyph.bitmap - # Use direct positioning without bitmap_top offset + # Position text using baseline alignment for i in range(bitmap.rows): for j in range(bitmap.width): byte_index = i * bitmap.pitch + (j // 8) if byte_index < len(bitmap.buffer): byte = bitmap.buffer[byte_index] if byte & (1 << (7 - (j % 8))): - draw.point((x + j, y + i), fill=color) + draw.point((x + j, y + baseline_offset + i), fill=color) x += face.glyph.advance.x >> 6 return x - orig_x