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

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for nonebot_plugin_anans_sketchbook-0.3.0.tar.gz
Algorithm Hash digest
SHA256 61fac80670da0a2cfc6e12c2f88ddc6ac2021d5987621c692102a82efd7dc084
MD5 13e38ad165499176a73f33cfe5a6a524
BLAKE2b-256 9023d74336f6f048984116165bbfdcda2ef30c427fddc168fdbefcc1efcf219a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nonebot_plugin_anans_sketchbook-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 56b6a5cc959bdea035fde4fd4926dbefcee57d3a93ef01264551265bfd146daa
MD5 8810f8f81c87759bffdcff2696dfbacd
BLAKE2b-256 63f37750bcc3fcd14dc45a1953a731b7cea0154899143484f6da1a9bcfc934e6

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