mirror of
https://github.com/UiO-Gaming/mustafa.git
synced 2026-11-05 13:56:48 +01:00
utilize file to bytesio util function
This commit is contained in:
2 files changed
+22
-17
No files matched your search
+2
-3
@@ -10,6 +10,7 @@ from PIL import ImageEnhance
|
||||
from PIL import ImageFont
|
||||
from PIL import UnidentifiedImageError
|
||||
|
||||
from cogs.utils import discord_utils
|
||||
from cogs.utils import embed_templates
|
||||
|
||||
|
||||
@@ -41,9 +42,7 @@ class Meme(commands.Cog):
|
||||
await interaction.response.defer()
|
||||
|
||||
# Fetch image
|
||||
input = BytesIO()
|
||||
input.write(await bilde.read())
|
||||
input.seek(0)
|
||||
input = await discord_utils.get_file_bytesio(bilde)
|
||||
|
||||
# Open image
|
||||
# Check if image is valid
|
||||
|
||||
+20
-14
@@ -1,6 +1,7 @@
|
||||
import re
|
||||
import urllib
|
||||
from datetime import datetime
|
||||
from io import BytesIO
|
||||
from os import remove
|
||||
|
||||
import discord
|
||||
@@ -11,6 +12,7 @@ from PIL import Image
|
||||
from PIL import ImageDraw
|
||||
from PIL import ImageFont
|
||||
|
||||
from cogs.utils import discord_utils
|
||||
from cogs.utils import embed_templates
|
||||
from cogs.utils.misc_utils import ignore_exception
|
||||
|
||||
@@ -221,7 +223,7 @@ class Misc(commands.Cog):
|
||||
|
||||
if bruker == interaction.user:
|
||||
embed = embed_templates.error_warning(
|
||||
interaction, text="Jeg vet du er ensom, men du kan " "ikke matche med deg selv"
|
||||
interaction, text="Jeg vet du er ensom, men du kan ikke matche med deg selv"
|
||||
)
|
||||
return await interaction.response.send_message(embed=embed)
|
||||
|
||||
@@ -233,16 +235,21 @@ class Misc(commands.Cog):
|
||||
if bruker.id == self.bot.user.id:
|
||||
match_percent = 100
|
||||
|
||||
await interaction.user.display_avatar.save(fp=f"./src/assets/temp/{interaction.user.id}_raw.png")
|
||||
await bruker.display_avatar.save(fp=f"./src/assets/temp/{bruker.id}_raw.png")
|
||||
|
||||
invoker = Image.open(f"./src/assets/temp/{interaction.user.id}_raw.png").convert("RGBA")
|
||||
# Prepare invoker avatar
|
||||
invoker_avatar = await discord_utils.get_file_bytesio(interaction.user.display_avatar)
|
||||
invoker = Image.open(invoker_avatar).convert("RGBA")
|
||||
invoker = invoker.resize((389, 389), Image.ANTIALIAS)
|
||||
user = Image.open(f"./src/assets/temp/{bruker.id}_raw.png").convert("RGBA")
|
||||
|
||||
# Prepare user avatar
|
||||
user_avatar = await discord_utils.get_file_bytesio(bruker.display_avatar)
|
||||
user = Image.open(user_avatar).convert("RGBA")
|
||||
user = user.resize((389, 389), Image.ANTIALIAS)
|
||||
|
||||
# Prepare heart image
|
||||
heart = Image.open("./src/assets/misc/heart.png")
|
||||
mask = Image.open("./src/assets/misc/heart.png", "r")
|
||||
|
||||
# Putting it all together
|
||||
image = Image.new("RGBA", (1024, 576))
|
||||
image.paste(invoker, (0, 94))
|
||||
image.paste(user, (635, 94))
|
||||
@@ -253,19 +260,18 @@ class Misc(commands.Cog):
|
||||
font_size = ((image.size[0] - font_size[0]) / 2, (image.size[1] - font_size[1]) / 2)
|
||||
draw.text(font_size, f"{match_percent}%", font=font, fill=(255, 255, 255, 255))
|
||||
|
||||
image.save(f"./src/assets/temp/{interaction.user.id}_{bruker.id}_edit.png")
|
||||
# Save image
|
||||
output = BytesIO()
|
||||
image.save(output, format="PNG")
|
||||
output.seek(0)
|
||||
|
||||
f = discord.File(f"./src/assets/temp/{interaction.user.id}_{bruker.id}_edit.png")
|
||||
# Send
|
||||
f = discord.File(output, filename=f"{interaction.user.id}_{bruker.id}_match.png")
|
||||
embed = discord.Embed()
|
||||
embed.set_image(url=f"attachment://{interaction.user.id}_{bruker.id}_edit.png")
|
||||
embed.set_image(url=f"attachment://{interaction.user.id}_{bruker.id}_match.png")
|
||||
embed_templates.default_footer(interaction, embed)
|
||||
await interaction.response.send_message(embed=embed, file=f)
|
||||
|
||||
with ignore_exception(OSError):
|
||||
remove(f"./src/assets/temp/{bruker.id}_raw.png")
|
||||
remove(f"./src/assets/temp/{interaction.user.id}_raw.png")
|
||||
remove(f"./src/assets/temp/{interaction.user.id}_{bruker.id}_edit.png")
|
||||
|
||||
|
||||
async def setup(bot: commands.Bot):
|
||||
"""
|
||||
|
||||
Reference in new issue
Block a user