啤酒烧烤表情生成通用版。
- assets # 图片、字体资源
- compress # 压缩字体脚本
- mahiro # mahiro 插件
- node # 核心逻辑
pnpm i
import { draw } from 'pjsk-node'
// ^ workspace name
// relative path: './node/src'
await draw({
text: '文字',
character: 'ena',
output: path.join(__dirname, './output.png')
})
mahiro 直接导入插件使用:
import { PJSK } from './mahiro'
// ...
mahiro.use(PJSK())
注:如需精确定位和配置,请修改 node/src/info.ts#characterSpecifiedConfig
。
触发命令格式:
pjsk {表情包ID} {文字}
pjsk help
e.g.
# 普通例子
pjsk ena 不行,我在玩原神
# 换行的例子
pjsk nene11 我心脏弱
死给你看
使用加速源:
# .npmrc
canvas_binary_host_mirror=https://registry.npmmirror.com/-/binary/canvas
将字体安装到系统里再使用。
-
移动
assets/src/fonts/font.ttf
与assets/src/fonts/y.otf
两个字体文件到/usr/share/fonts/pjsk/*
文件夹下。 -
设定 CJK 兜底字体:
sudo apt install fonts-noto-cjk fonts-noto-color-emoji sudo locale-gen zh_CN zh_CN.UTF-8 sudo update-locale LC_ALL=zh_CN.UTF-8 LANG=zh_CN.UTF-8
-
刷新字体缓存:
fc-cache -fv
-
修改
node/src/draw.ts
中的3
处代码:-const fontNameForFallback = 'pjsk' -const fontNameForMain = 'yyy' -const fontFamily = `${fontNameForMain},${fontNameForFallback}` +const fontNameForFallback = 'SSFangTangTi' +const fontNameForMain = 'FOT-Yuruka Std' +const fontFamily = `"${fontNameForMain}","${fontNameForFallback}"`
-registerFonts()
-fontWeight: 800,
-
重启 mahiro ,再次尝试。