From d6b9cf8e96988db31a9be37fffda4c5801e89cf1 Mon Sep 17 00:00:00 2001 From: MahxieNoodle Date: Mon, 24 Apr 2017 11:01:40 -0700 Subject: [PATCH] changes mask settings and fixed filenames for images.py images. --- cogs/utils/images.py | 14 +++++++------- .../banner/base/{mask.png => avatar_mask.png} | Bin images/banner/base/avatar_mask_110.png | Bin 0 -> 20148 bytes images/banner/base/avatar_mask_220.png | Bin 0 -> 23035 bytes .../{bannerBot.png => lowerBannerImage.png} | Bin .../{bannerTop2.png => upperBannerImage.png} | Bin 6 files changed, 7 insertions(+), 7 deletions(-) rename images/banner/base/{mask.png => avatar_mask.png} (100%) create mode 100644 images/banner/base/avatar_mask_110.png create mode 100644 images/banner/base/avatar_mask_220.png rename images/banner/base/{bannerBot.png => lowerBannerImage.png} (100%) rename images/banner/base/{bannerTop2.png => upperBannerImage.png} (100%) diff --git a/cogs/utils/images.py b/cogs/utils/images.py index 1c3d5a0..38419fc 100644 --- a/cogs/utils/images.py +++ b/cogs/utils/images.py @@ -11,8 +11,8 @@ whitneyMedium = "/usr/share/fonts/whitney-medium.ttf" whitneyBold = "/usr/share/fonts/whitney-bold.ttf" header_height = 125 canvas_height = 145 -banner_background = "{}/bannerTop2.png".format(base_path) -banner_bot = "{}/bannerBot.png".format(base_path) +upper_banner_image = "{}/upper_banner_image".format(base_path) +lower_banner_image = "{}/lower_banner_image.png".format(base_path) async def create_banner(member, image_title, data): @@ -28,7 +28,7 @@ async def create_banner(member, image_title, data): # Open up the avatar, save it as a temporary file avatar_url = member.avatar_url - avatar_path = "{}/avatar_{}_{}.jpg".format(tmp_path, member.id, int(datetime.datetime.utcnow().timestamp())) + avatar_path = "{}/avatar_{}_{}.png".format(tmp_path, member.id, int(datetime.datetime.utcnow().timestamp())) # Ensure the user has an avatar if avatar_url != "": with aiohttp.ClientSession() as s: @@ -51,9 +51,9 @@ async def create_banner(member, image_title, data): base_height = canvas_height + (lines_of_text * 20) # This is the background to the avatar - mask = Image.open('{}/mask.png'.format(base_path)).convert('L') + mask = Image.open('{}/avatar_mask_220.png'.format(base_path)).convert('L') user_avatar = Image.open(avatar_path) - output = ImageOps.fit(user_avatar, mask.size, centering=(0.5, 0.5)) + output = ImageOps.fit(user_avatar, (110,110), centering=(0.5, 0.5)) output.putalpha(mask) # Here's our finalized avatar image that we'll use @@ -63,8 +63,8 @@ async def create_banner(member, image_title, data): base_image = Image.new("RGB", (350, base_height), "#000000") # Create the header, including our avatar image with it - header_top = Image.open(banner_background).convert("RGBA") - header_bot = Image.open(banner_bot).convert("RGBA") + header_top = Image.open(upper_banner_image).convert("RGBA") + header_bot = Image.open(lower_banner_image).convert("RGBA") header_base_image = Image.new("RGB", (350, header_height), "#000000") header_base_image.paste(header_top, (0, 0), header_top) header_base_image.paste(header_bot, (0, 0), header_bot) diff --git a/images/banner/base/mask.png b/images/banner/base/avatar_mask.png similarity index 100% rename from images/banner/base/mask.png rename to images/banner/base/avatar_mask.png diff --git a/images/banner/base/avatar_mask_110.png b/images/banner/base/avatar_mask_110.png new file mode 100644 index 0000000000000000000000000000000000000000..03c5342227c39595deda6f0489fc3ffd2f8b8b93 GIT binary patch literal 20148 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 literal 0 HcmV?d00001 diff --git a/images/banner/base/avatar_mask_220.png b/images/banner/base/avatar_mask_220.png new file mode 100644 index 0000000000000000000000000000000000000000..0b16699737e97f83b8d4f4f12b31af54de99de5c GIT binary patch literal 23035 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 literal 0 HcmV?d00001 diff --git a/images/banner/base/bannerBot.png b/images/banner/base/lowerBannerImage.png similarity index 100% rename from images/banner/base/bannerBot.png rename to images/banner/base/lowerBannerImage.png diff --git a/images/banner/base/bannerTop2.png b/images/banner/base/upperBannerImage.png similarity index 100% rename from images/banner/base/bannerTop2.png rename to images/banner/base/upperBannerImage.png