diff --git a/src/display_manager.py b/src/display_manager.py index 0fea2f37..2f1b55aa 100644 --- a/src/display_manager.py +++ b/src/display_manager.py @@ -176,6 +176,14 @@ class DisplayManager: self.small_font = ImageFont.truetype("assets/fonts/PressStart2P-Regular.ttf", 8) logger.info("Press Start 2P small font loaded successfully") + # Load another PressStart2P instance at size 6 for inning display + try: + self.inning_font = ImageFont.truetype("assets/fonts/PressStart2P-Regular.ttf", 6) + logger.info("Press Start 2P inning font (size 6) loaded successfully") + except Exception as e: + logger.warning(f"Failed to load Press Start 2P size 6: {e}. Falling back to small_font.") + self.inning_font = self.small_font + # Load 5x7 BDF font for calendar events try: script_dir = os.path.dirname(os.path.abspath(__file__)) @@ -219,6 +227,8 @@ class DisplayManager: self.calendar_font = self.regular_font if not hasattr(self, 'extra_small_font'): self.extra_small_font = self.regular_font + if not hasattr(self, 'inning_font'): # Add fallback for inning_font too + self.inning_font = self.small_font def get_text_width(self, text, font): """Get the width of text when rendered with the given font.""" diff --git a/src/mlb_manager.py b/src/mlb_manager.py index 5f0dcced..a2be5a45 100644 --- a/src/mlb_manager.py +++ b/src/mlb_manager.py @@ -535,11 +535,12 @@ class MLBLiveManager(BaseMLBManager): # Draw Inning (Top Center) inning_half_indicator = "▲" if game_data['inning_half'] == 'top' else "▼" inning_text = f"{inning_half_indicator}{game_data['inning']}" - inning_bbox = draw.textbbox((0, 0), inning_text, font=self.display_manager.font) + inning_font_to_use = self.display_manager.inning_font # Use the new smaller font + inning_bbox = draw.textbbox((0, 0), inning_text, font=inning_font_to_use) inning_width = inning_bbox[2] - inning_bbox[0] inning_x = (width - inning_width) // 2 inning_y = 2 # Position near top center - draw.text((inning_x, inning_y), inning_text, fill=(255, 255, 255), font=self.display_manager.font) + draw.text((inning_x, inning_y), inning_text, fill=(255, 255, 255), font=inning_font_to_use) # --- NEW BASES AND COUNT DRAWING --- bases_occupied = game_data['bases_occupied'] # [1st, 2nd, 3rd]