🐛 修复绘图Bug (#600)

This commit is contained in:
KimigaiiWuyi 2023-11-12 03:01:31 +08:00
parent 23de41181b
commit c268a9f020
2 changed files with 10 additions and 2 deletions

View File

@ -68,7 +68,11 @@ async def draw_daily_cost_img(is_force: bool = False) -> Union[str, bytes]:
icon = icon.resize((77, 77)) icon = icon.resize((77, 77))
bar = Image.open(TEXT_PATH / 'bar.png') bar = Image.open(TEXT_PATH / 'bar.png')
bar_draw = ImageDraw.Draw(bar) bar_draw = ImageDraw.Draw(bar)
bar.paste(icon, (43, 10), icon) if icon.mode == 'RGBA':
mask = icon.split()[3] # 获取alpha通道作为遮罩
bar.paste(icon, (43, 10), mask)
else:
bar.paste(icon, (43, 10)) # 如果没有alpha通道不使用遮罩
domain1, domain2 = domain.split('') domain1, domain2 = domain.split('')

View File

@ -99,7 +99,11 @@ async def draw_xk_abyss_img():
# 绘图部分 # 绘图部分
char_bg = Image.open(TEXT_PATH / 'char_bg.png') char_bg = Image.open(TEXT_PATH / 'char_bg.png')
charimg = Image.open(CHAR_PATH / f'{char_id}.png').resize((117, 117)) charimg = Image.open(CHAR_PATH / f'{char_id}.png').resize((117, 117))
char_bg.paste(charimg, (6, 2), charimg) if charimg.mode == 'RGBA':
mask = charimg.split()[3] # 使用alpha通道作为mask
char_bg.paste(charimg, (6, 2), mask)
else:
char_bg.paste(charimg, (6, 2))
char_bg_draw = ImageDraw.Draw(char_bg) char_bg_draw = ImageDraw.Draw(char_bg)
if char['rarity'] >= 5: if char['rarity'] >= 5:
text = (193, 123, 0) text = (193, 123, 0)