A library rich with many image generation funcitons powered by PIL for your discord bot such as leveling, welcome card and meme generation!
NOTE : Ranking Card is DEPRICATED. Use krishsharma0413/DiscordLevelingCard for ranking card generation.
fight_under_this_flag
uwu_discord
rip
for pypi version
pip install pilcord
for github developement version
pip install git+https://github.com/ResetXD/pilcord
The method will return bytes
which can directly be used in discord.py/disnake/pycord/nextcord 's File class
.
RankCard class
__init__
method
RankCard(
settings: CardSettings,
avatar:str,
level:int,
current_exp:int,
max_exp:int,
username:str,
rank: Optional[int] = None
)
-
settings
- Settings class from DiscordLevelingCard. -
avatar
- avatar image url. -
level
- level of the user. -
current_exp
- current exp of the user. -
max_exp
- max exp of the user. -
username
- username of the user. -
rank
- rank of the user. (optional)
CardSettings class
__init__
method
CardSettings(
background: Union[PathLike, BufferedIOBase, str],
bar_color: Optional[str] = 'white',
text_color: Optional[str] = 'white',
background_color: Optional[str]= "#36393f"
)
-
background
- background image url or file-object inrb
mode.4:1
aspect ratio recommended.
-
bar_color
- color of the bar [example: "white" or "#000000"] -
text_color
- color of the text [example: "white" or "#000000"] -
background_color
- color of the background [example: "white" or "#000000"]
example
It returns bytes which can directly be used in discord.py and its fork's File class.
from disnake.ext import commands
from DiscordLevelingCard import RankCard, CardSettings
import disnake
client = commands.Bot()
# define background, bar_color, text_color at one place
card_settings = CardSettings(
background="url or path to background image",
text_color="white",
bar_color="#000000"
)
@client.slash_command(name="rank")
async def user_rank_card(ctx, user:disnake.Member):
await ctx.response.defer()
a = RankCard(
settings=card_settings,
avatar=user.display_avatar.url,
level=1,
current_exp=1,
max_exp=1,
username="cool username",
rank=1
)
image = await a.card1()
await ctx.edit_original_message(file=disnake.File(image, filename="rank.png")) # providing filename is very important
Meme class
__init__
method
Meme(
avatar: str
)
avatar
- image url.
fight_under_this_flag method
Meme.fight_under_this_flag()
returns
- bytes
which can directly be used within discord.File
class.
uwu_discord method
Meme.uwu_discord()
returns
- bytes
which can directly be used within discord.File
class.
example
It returns bytes which can directly be used in discord.py and its fork's File class.
from disnake.ext import commands
from DiscordLevelingCard import Meme
import disnake
client = commands.Bot()
@client.slash_command(name="fight_under_this_flag")
async def fight_under_this_flag_meme(ctx, user:disnake.Member):
await ctx.response.defer()
a = Meme(
avatar=user.display_avatar.url
)
image = await a.fight_under_this_flag()
await ctx.edit_original_message(file=disnake.File(image, filename="fight.png")) # providing filename is very important