From 9dd1b821ab422cd6710dea118175a32065953070 Mon Sep 17 00:00:00 2001 From: Slipstream Date: Tue, 20 May 2025 21:13:07 -0600 Subject: [PATCH] Refactor code structure for improved readability and maintainability --- FONT/OPTIFutura-ExtraBlackCond.otf | Bin 0 -> 23648 bytes cogs/caption_cog.py | 4 +--- 2 files changed, 1 insertion(+), 3 deletions(-) create mode 100644 FONT/OPTIFutura-ExtraBlackCond.otf diff --git a/FONT/OPTIFutura-ExtraBlackCond.otf b/FONT/OPTIFutura-ExtraBlackCond.otf new file mode 100644 index 0000000000000000000000000000000000000000..118e4eaaf7a0fc0171d0ccda1c8b3de4746a8625 GIT binary patch literal 23648 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 Y0)qmyRt1e}GB7awpUGee)rFM;0Kjc%>i_@% literal 0 HcmV?d00001 diff --git a/cogs/caption_cog.py b/cogs/caption_cog.py index 5b43b63..1cb2efc 100644 --- a/cogs/caption_cog.py +++ b/cogs/caption_cog.py @@ -22,9 +22,7 @@ class CaptionCog(commands.Cog, name="Caption"): self.bot = bot # Define preferred font names/paths self.preferred_fonts = [ - "impact.ttf", # Common name for Impact font file - "Impact", # Font name Pillow might find if installed system-wide - os.path.join("FONT", "impact.ttf") # Bundled fallback + os.path.join("FONT", "OPTIFutura-ExtraBlackCond.otf") # Bundled fallback ] def _add_text_to_gif(self, image_bytes: bytes, caption_text: str):