欢迎光临散文网 会员登陆 & 注册

给Obsidian&Excalidraw增加支持GIF功能(非iframe)自动&逐帧播放

2023-10-30 18:36 作者:一鸣惊人_001  | 我要投稿

背景

Excalidraw中只支持静态图片,如果要显示gif动画的话,一种方式是通过iframe。但是iframe只能在其他类型的元素之上;而且gif动画的播放不好控制(有的算法演示gif一步步演示)。

因此增加在元素上播放gif动画功能,这样可以解决层次问题、手动控制逐帧播放问题

效果

1. 自动播放。与iframe不一样的是,这里元素层次可以自由调整,比如下面矩形遮盖gif

1. 自动播放

2. 手动控制逐帧播放(这里采用的'<'和'>'按键显示前一帧或后一帧)

.2 手动控制逐帧播放


实现

这里我选择的是在drawElementFromCanvasHook中绘制gif到元素的canvas。需要先解析gif为frames,然后根据当前帧编号来显示帧。


给Obsidian&Excalidraw增加支持GIF功能(非iframe)自动&逐帧播放的评论 (共 条)

分享到微博请遵守国家法律