mirror of
https://github.com/A-Minos/nonebot-plugin-tetris-stats.git
synced 2026-03-05 05:36:54 +08:00
✨ 添加 img_to_png 方法
This commit is contained in:
@@ -9,8 +9,8 @@ from nonebot_plugin_user import User # type: ignore[import-untyped]
|
|||||||
from nonebot_plugin_userinfo import BotUserInfo, UserInfo # type: ignore[import-untyped]
|
from nonebot_plugin_userinfo import BotUserInfo, UserInfo # type: ignore[import-untyped]
|
||||||
|
|
||||||
from ...db import BindStatus, create_or_update_bind, trigger
|
from ...db import BindStatus, create_or_update_bind, trigger
|
||||||
from ...utils.avatar import get_avatar
|
|
||||||
from ...utils.host import HostPage, get_self_netloc
|
from ...utils.host import HostPage, get_self_netloc
|
||||||
|
from ...utils.image import get_avatar
|
||||||
from ...utils.render import Bind, render
|
from ...utils.render import Bind, render
|
||||||
from ...utils.render.schemas.base import Avatar, People
|
from ...utils.render.schemas.base import Avatar, People
|
||||||
from ...utils.screenshot import screenshot
|
from ...utils.screenshot import screenshot
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ from nonebot_plugin_user import User # type: ignore[import-untyped]
|
|||||||
from nonebot_plugin_userinfo import BotUserInfo, EventUserInfo, UserInfo # type: ignore[import-untyped]
|
from nonebot_plugin_userinfo import BotUserInfo, EventUserInfo, UserInfo # type: ignore[import-untyped]
|
||||||
|
|
||||||
from ...db import BindStatus, create_or_update_bind, trigger
|
from ...db import BindStatus, create_or_update_bind, trigger
|
||||||
from ...utils.avatar import get_avatar
|
|
||||||
from ...utils.host import HostPage, get_self_netloc
|
from ...utils.host import HostPage, get_self_netloc
|
||||||
|
from ...utils.image import get_avatar
|
||||||
from ...utils.render import Bind, render
|
from ...utils.render import Bind, render
|
||||||
from ...utils.render.schemas.base import People
|
from ...utils.render.schemas.base import People
|
||||||
from ...utils.screenshot import screenshot
|
from ...utils.screenshot import screenshot
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ from nonebot_plugin_user import User # type: ignore[import-untyped]
|
|||||||
from nonebot_plugin_userinfo import BotUserInfo, EventUserInfo, UserInfo # type: ignore[import-untyped]
|
from nonebot_plugin_userinfo import BotUserInfo, EventUserInfo, UserInfo # type: ignore[import-untyped]
|
||||||
|
|
||||||
from ...db import BindStatus, create_or_update_bind, trigger
|
from ...db import BindStatus, create_or_update_bind, trigger
|
||||||
from ...utils.avatar import get_avatar
|
|
||||||
from ...utils.host import HostPage, get_self_netloc
|
from ...utils.host import HostPage, get_self_netloc
|
||||||
|
from ...utils.image import get_avatar
|
||||||
from ...utils.render import Bind, render
|
from ...utils.render import Bind, render
|
||||||
from ...utils.render.schemas.base import People
|
from ...utils.render.schemas.base import People
|
||||||
from ...utils.screenshot import screenshot
|
from ...utils.screenshot import screenshot
|
||||||
|
|||||||
@@ -15,9 +15,9 @@ from nonebot_plugin_user import get_user # type: ignore[import-untyped]
|
|||||||
from nonebot_plugin_userinfo import EventUserInfo, UserInfo # type: ignore[import-untyped]
|
from nonebot_plugin_userinfo import EventUserInfo, UserInfo # type: ignore[import-untyped]
|
||||||
|
|
||||||
from ...db import query_bind_info, trigger
|
from ...db import query_bind_info, trigger
|
||||||
from ...utils.avatar import get_avatar
|
|
||||||
from ...utils.exception import RequestError
|
from ...utils.exception import RequestError
|
||||||
from ...utils.host import HostPage, get_self_netloc
|
from ...utils.host import HostPage, get_self_netloc
|
||||||
|
from ...utils.image import get_avatar
|
||||||
from ...utils.metrics import TetrisMetricsProWithLPMADPM, get_metrics
|
from ...utils.metrics import TetrisMetricsProWithLPMADPM, get_metrics
|
||||||
from ...utils.render import render
|
from ...utils.render import render
|
||||||
from ...utils.render.schemas.base import People, Ranking
|
from ...utils.render.schemas.base import People, Ranking
|
||||||
|
|||||||
@@ -52,3 +52,11 @@ async def get_avatar(user: UserInfo, scheme: Literal['Data URI', 'bytes'], defau
|
|||||||
raise TypeError(msg)
|
raise TypeError(msg)
|
||||||
return f'data:{Image.MIME[avatar_format]};base64,{b64encode(bot_avatar).decode()}'
|
return f'data:{Image.MIME[avatar_format]};base64,{b64encode(bot_avatar).decode()}'
|
||||||
return bot_avatar
|
return bot_avatar
|
||||||
|
|
||||||
|
|
||||||
|
def img_to_png(image: bytes) -> bytes:
|
||||||
|
"""将图片转换为 PNG 格式"""
|
||||||
|
result = BytesIO()
|
||||||
|
with Image.open(BytesIO(image)) as img:
|
||||||
|
img.save(result, 'PNG')
|
||||||
|
return result.getvalue()
|
||||||
Reference in New Issue
Block a user