Skip to main content

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

Project description

nonebot

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

License Python Version Nonebot Onebot 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
mv nonebot_plugin_anans_sketchbook/* . && rm -rf nonebot_plugin_anans_sketchbook
pip install -r requirements.txt

配置

主要可配置项包括:

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

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

具体配置项如下

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.1.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.1-py3-none-any.whl (29.1 MB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for nonebot_plugin_anans_sketchbook-0.3.1.tar.gz
Algorithm Hash digest
SHA256 89bd56cb55d815322b0befc2cace423550368ff9a728151e9633fe1e06547d2d
MD5 530c720671b5a7cdcc7900a1e9dc1a7a
BLAKE2b-256 97b98b69fbecf3f2ed7c2c70f7636f202efe45ef40fb8f12adb851406de0bdc8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nonebot_plugin_anans_sketchbook-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5b50e9fd8597d94c10298e299c69534ce20bf9b3f71065e7cb11779ad6894a18
MD5 1f23d161af4a73ec840d6d3c3b71133f
BLAKE2b-256 7bc97a5210911b410174e2589ad2bf0d23349e45b92b2961e90c10b130179442

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