Untitled

前提:玩了这么久博客,一直想给博客里加些可互动元素,一番寻找后,发现了这个可爱的live2d看板娘。

一、安装依赖

1
npm install --save hexo-helper-live2d

二、向站点_config.yml中添加这些字段

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# Live2D
## https://github.com/EYHN/hexo-helper-live2d
live2d:
enable: true
# enable: false
scriptFrom: local # 默认
pluginRootPath: live2dw/ # 插件在站点上的根目录(相对路径)
pluginJsPath: lib/ # 脚本文件相对与插件根目录路径
pluginModelPath: assets/ # 模型文件相对与插件根目录路径
# scriptFrom: jsdelivr # jsdelivr CDN
# scriptFrom: unpkg # unpkg CDN
# scriptFrom: https://www.unpkg.com/npm/live2d-widget@3.x/lib/L2Dwidget.min.js # 你的自定义 url
tagMode: false # 标签模式, 是否仅替换 live2d tag标签而非插入到所有页面中
debug: false # 调试, 是否在控制台输出日志
model:
use: live2d-widget-model-wanko # npm-module package name
# use: wanko # 博客根目录/live2d_models/ 下的目录名
# use: ./wives/wanko # 相对于博客根目录的路径
# use: https://www.unpkg.com/npm/live2d-widget-model-wanko@1.0.5/assets/wanko.model.json # 你的自定义 url
display:
position: right
width: 150
height: 300
mobile:
show: true # 手机中是否展示

三、下载模型

使用

1
npm install <package-name>

**<package-name>**为你的模型名,可在https://github.com/xiazeyu/live2d-widget-models中查看。

找到站点_config.yml中的:

1
2
model:
use: live2d-widget-model-wanko # npm-module package name

改为:

1
2
model:
use: <package-name> # npm-module package name

**<package-name>**为你的模型名

四、进阶玩法

1.去 ‣ Code一下代码

2. 放到 /themes/butterfly/source/下,改名为live2d-widget,接下来修改项目中的 autoload.js 文件。

把:

1
const live2d_path = "https://fastly.jsdelivr.net/gh/stevenjoezhang/live2d-widget/";

改为

1
const live2d_path = "/live2d-widget/";

3.查看效果并部署

输入以下字段查看效果

1
hexo clean&&hexo d&&hexo s

没问题后输入

1
hexo clean&&hexo d&&hexo d

五、注意

从Github下载下来的库使用了cdn,会导致换皮肤功能没有效果,需要找到 **live2d-widget/autoload.js** 中将**cdnPath**注释,打开**apiPath**

1
2
3
4
5
6
7
8
9
10
11
12
13
14
// 加载 waifu.css live2d.min.js waifu-tips.js
if (screen.width >= 768) {
Promise.all([
loadExternalResource(live2d_path + "waifu.css", "css"),
loadExternalResource(live2d_path + "live2d.min.js", "js"),
loadExternalResource(live2d_path + "waifu-tips.js", "js")
]).then(() => {
initWidget({
waifuPath: live2d_path + "waifu-tips.json",
apiPath: "https://live2d.fghrsh.net/api/",
// cdnPath: "https://fastly.jsdelivr.net/gh/fghrsh/live2d_api/" // 使用cdn会无法换皮肤
});
});
}