Согласно спецификации метода Canvas 2DRenderingContext drawImage,
Specifically, when a CanvasImageSource object represents an animated image in an
HTMLImageElement, the user agent must use the default image of the animation (the one
that the format defines is to be used when animation is not supported or is
disabled), or, if there is no such image, the first frame of the animation, when
rendering the image for CanvasRenderingContext2D APIs.
Это означает, что на холсте будет нарисован только первый кадр нашего анимированного холста.Это связано с тем, что у нас нет никакого контроля над анимацией внутри тега img.
А fabricjs основан на API холста, поэтому он регулируется теми же правилами.
Решение - вам нужнопроанализируйте все неподвижные изображения из вашего анимированного GIF-файла и экспортируйте его в виде спрайт-листа.Затем вы можете легко анимировать его в fabricjs благодаря классу sprite.