Skip to main content

安安的素描本聊天框的NoneBot插件

Project description

nonebot

安安的素描本聊天框的NoneBot插件

License Python Version Nonebot Onebot

本分支是 MarkCup-Official/Anan-s-Sketchbook-Chat-Box 的Nonebot插件,支持绘制文本/图片到安安的素描本上,也支持将Bot的所有文本消息替换为使用安安的素描本发送

部署

方案1 使用nb-cli或pip安装

nb-cli:

nb plugin install nonebot-plugin-anans-sketchbook

pip:

pip install nonebot-plugin-anans-sketchbook

而后按照 NoneBot加载插件 加载插件

方案2 直接引入

将本项目clone到Nonebot的插件目录并安装依赖:

cd 插件目录
git clone https://github.com/ZiAzusa/nonebot_plugin_anans_sketchbook.git
cd nonebot_plugin_anans_sketchbook

pip install -r requirements.txt

配置

主要可配置项包括:

  • 文本框和图片框的坐标范围
  • 字体文件路径
  • 底图和遮罩图路径
  • 是否将Bot的所有文本消息替换为安安的素描本

如果通过nb-cli或pip安装,可以使用Nonebot的全局配置文件.env.*进行配置(也可以不进行配置,插件内置了默认配置文件),具体参考 NoneBot配置mv nonebot_plugin_anans_sketchbook/* . && rm -rf nonebot_plugin_anans_sketchbook

具体配置项如下

ANAN__FONT_FILE

  • 类型:str
  • 默认:"resources/allseto.ttf"
  • 说明:使用字体的文件路径

ANAN__TEXT_WRAP_ALGORITHM

  • 类型:str
  • 默认:"original"
  • 说明:文本换行算法,可选值:"original"(原始算法), "knuth_plass"(改进的Knuth-Plass算法)

ANAN__BASEIMAGE_MAPPING

  • 类型:Dict[str, str]
  • 默认:
    {
      "普通": "resources/BaseImages/base.png",
      "开心": "resources/BaseImages/开心.png",
      "生气": "resources/BaseImages/生气.png",
      "无语": "resources/BaseImages/无语.png",
      "脸红": "resources/BaseImages/脸红.png",
      "病娇": "resources/BaseImages/病娇.png",
      "闭眼": "resources/BaseImages/闭眼.png",
      "难受": "resources/BaseImages/难受.png",
      "害怕": "resources/BaseImages/害怕.png",
      "激动": "resources/BaseImages/激动.png",
      "惊讶": "resources/BaseImages/惊讶.png",
      "哭泣": "resources/BaseImages/哭泣.png"
    }
    
  • 说明:将差分表情导入,默认底图base.png

ANAN__BASEIMAGE_FILE

  • 类型:str
  • 默认:"resources/BaseImages/base.png"
  • 说明:默认底图文件路径

ANAN__TEXT_BOX_TOPLEFT

  • 类型:List[int]
  • 默认:[119, 450]
  • 说明:文本框左上角坐标 (x, y), 同时适用于图片框

ANAN__IMAGE_BOX_BOTTOMRIGHT

  • 类型:List[int]
  • 默认:[398, 625]
  • 说明:文本框右下角坐标 (x, y), 同时适用于图片框

ANAN__BASE_OVERLAY_FILE

  • 类型:str
  • 默认:"resources/BaseImages/base_overlay.png"
  • 说明:置顶图层的文件路径

ANAN__USE_BASE_OVERLAY

  • 类型:bool
  • 默认:True
  • 说明:是否启用底图的置顶图层, 用于表现遮挡

ANAN__CONVERT_ALL_TO_ANAN

  • 类型:bool
  • 默认:False
  • 说明:是否将Bot的所有文本消息替换为安安的素描本

ANAN__MAX_LEN_OF_LONG_TEXT

  • 类型:int
  • 默认:150
  • 说明:如果Bot的消息的长度大于这个值,原样发送消息(避免因字体过小无法看清)

此外,如果通过直接引入的方式使用插件,可以直接修改config.yaml。

使用

命令:anan 或 夏目安安
功能:生成夏目安安的素描本聊天框

用法:夏目安安 ?差分 ?文本 ?图片

例如:夏目安安 开心 这是吾辈在【说话】

示例:
夏目安安 这是吾辈在说话
夏目安安 开心 吾辈开心
夏目安安 [图片]
夏目安安 开心 [图片]
夏目安安 开心 吾辈喜欢这个 [图片]
使用例

许可证

本项目基于MIT协议传播,仅供个人学习交流使用,不拥有相关素材的版权。进行分发时应注意不违反素材版权与官方二次创造协定。


更多信息请查看原项目 MarkCup-Official/Anan-s-Sketchbook-Chat-Box

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nonebot_plugin_anans_sketchbook-0.3.2.tar.gz (29.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nonebot_plugin_anans_sketchbook-0.3.2-py3-none-any.whl (29.1 MB view details)

Uploaded Python 3

File details

Details for the file nonebot_plugin_anans_sketchbook-0.3.2.tar.gz.

File metadata

File hashes

Hashes for nonebot_plugin_anans_sketchbook-0.3.2.tar.gz
Algorithm Hash digest
SHA256 fae5a1a52017a021b3dedc63b8af5f70913ee92962f5412a04059269f83ee96e
MD5 3e0f6d58b7e48b6baf0bd5c06e0e5fe1
BLAKE2b-256 58b29c3b0698ad87fb30f986c366efe85e5cd72a46aa0ede29f6009477580bf3

See more details on using hashes here.

File details

Details for the file nonebot_plugin_anans_sketchbook-0.3.2-py3-none-any.whl.

File metadata

File hashes

Hashes for nonebot_plugin_anans_sketchbook-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f2fba4cf9439eddcd473abddba7c0fef2a939333dca857468a647eb3961998a8
MD5 4265198a59dd880d73de7b5e89d59dd8
BLAKE2b-256 cfc07d33d74a5ad73d1e996e4e5369d0fb72cfb1c706ff0c725c69e6d9ae1971

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page