Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Meme Generator 自定义表情

一组为 MemeCrafters/meme-generator 编写的轻量自定义表情模板。

目前包含两个模板:

key 功能 输入 触发词
apng_two_frame 将两张图片合成两帧 APNG,第一帧短暂显示,第二帧长时间定格 2 张图片 apng两帧两帧动图apng
szb_os_holdsign 在欧丝举牌底图上绘制自定义文字 1 段文字 欧丝举牌欧斯举牌os举牌

目录结构

.
├── apng_two_frame/
│   └── __init__.py
└── szb_os_holdsign/
    ├── __init__.py
    └── images/
        └── 0.png

安装

先按照上游文档安装并配置 meme-generator,然后克隆本仓库:

git clone https://github.com/DNAlec/memes.git

meme-generator 配置文件中,将本仓库的绝对路径加入 meme_dirs

[meme]
meme_dirs = ["/absolute/path/to/memes"]

重启 meme-generator 后,它会自动扫描每个子目录中的 __init__.py 并注册模板。更多信息参见上游的加载其他表情文档。

依赖

这些模板没有在 meme-generator 之外引入额外的第三方依赖,主要使用:

  • meme-generator
  • pil-utils
  • Pillow

structzlibdatetimeiopathlib 均为 Python 标准库。

字体

szb_os_holdsign 优先使用 FZShaoEr-M11S 字体。当运行环境未安装该字体时,pil-utils 会尝试使用思源黑体、Noto Sans CJK SC、微软雅黑等后备字体。图片通常仍能生成,但字形、字宽和换行可能不同。

如果需要稳定一致的排版,请在部署环境安装同一字体,并在 Linux 上刷新字体缓存:

fc-cache -f
fc-match "FZShaoEr-M11S"

请自行确认所使用字体的授权条款;本仓库不包含该字体文件。

实现说明

apng_two_frame

  • 输出画布尺寸以第二张图为准。
  • 第一张图会等比缩小并居中,留白区域使用白色填充。
  • 第二张图不缩放、不裁切。
  • 第一帧延迟为 10 ms,第二帧延迟为 999 s,并使用无限循环。
  • 生成过程会在内存中处理完整图片,建议由上层服务限制用户上传图片的尺寸和像素数。

szb_os_holdsign

  • 仅接受 1 段文字。
  • 默认文字为 500
  • 文字会自动换行并缩小以适应举牌区域;超过可排版范围时会返回文字过长错误。

素材说明

表情素材来自网络,仅供学习与交流使用。如有侵权,请提交 Issue 联系删除。

许可证

本项目的代码使用 MIT License 开源。网络素材和字体不因本仓库的 MIT 许可而改变其原有权利归属。

About

MemeCrafters/meme-generator 的轻量自定义表情模板

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages