diff --git a/src/plugins/nonebot_hk_reporter/utils.py b/src/plugins/nonebot_hk_reporter/utils.py index 7e0e475..a2461ab 100644 --- a/src/plugins/nonebot_hk_reporter/utils.py +++ b/src/plugins/nonebot_hk_reporter/utils.py @@ -1,4 +1,5 @@ import asyncio +import base64 from html import escape from typing import Awaitable, Callable, Optional from urllib.parse import quote @@ -91,7 +92,8 @@ class Render(metaclass=Singleton): lines = text.split('\n') parsed_lines = list(map(lambda x: '

{}

'.format(escape(x)), lines)) html_text = '
{}
'.format(''.join(parsed_lines)) - url = 'data:text/html,{}'.format(quote(html_text)) + url = 'data:text/html;charset=UTF-8;base64,{}'.format(base64.b64encode(html_text.encode()).decode()) + logger.info(url) data = await self.render(url, target='div') return data diff --git a/tests/test_render.py b/tests/test_render.py index f61ca19..6eda384 100644 --- a/tests/test_render.py +++ b/tests/test_render.py @@ -10,5 +10,12 @@ if typing.TYPE_CHECKING: @pytest.mark.render async def test_render(plugin_module: 'nonebot_hk_reporter'): render = plugin_module.utils.Render() - res = await render.text_to_pic('a\nbbbbbbbbbbbbbbbbbbbbbb\ncd') + res = await render.text_to_pic('''a\nbbbbbbbbbbbbbbbbbbbbbb\ncd +

中文

+VuePress 由两部分组成:第一部分是一个极简静态网站生成器 + +(opens new window),它包含由 Vue 驱动的主题系统和插件 API,另一个部分是为书写技术文档而优化的默认主题,它的诞生初衷是为了支持 Vue 及其子项目的文档需求。 + +每一个由 VuePress 生成的页面都带有预渲染好的 HTML,也因此具有非常好的加载性能和搜索引擎优化(SEO)。同时,一旦页面被加载,Vue 将接管这些静态内容,并将其转换成一个完整的单页应用(SPA),其他的页面则会只在用户浏览到的时候才按需加载。 +''') print(res)