我正在研究一个项目,我被要求在fabric.js画布上支持动画GIF。Fabric.js画布上的动画GIF
按照https://github.com/kangax/fabric.js/issues/560,我遵循建议定期渲染,使用fabric.util.requestAnimFrame。视频呈现这种方法很好,但GIF似乎并没有更新。
var canvas = new fabric.StaticCanvas(document.getElementById('stage'));
fabric.util.requestAnimFrame(function render() {
canvas.renderAll();
fabric.util.requestAnimFrame(render);
});
var myGif = document.createElement('img');
myGif.src = 'http://i.stack.imgur.com/e8nZC.gif';
if(myGif.height > 0){
addImgToCanvas(myGif);
} else {
myGif.onload = function(){
addImgToCanvas(myGif);
}
}
function addImgToCanvas(imgToAdd){
var obj = new fabric.Image(imgToAdd, {
left: 105,
top: 30,
crossOrigin: 'anonymous',
height: 100,
width:100
});
canvas.add(obj);
}
的jsfiddle这里:http://jsfiddle.net/phoenixrizin/o359o11f/
任何意见,将不胜感激!我一直在寻找,但还没有找到一个可行的解决方案。
您是否找到一个好的解决方案? – 3244611user 2015-11-22 18:44:32
@ 3244611user我最终走了一条不同的路线,并使用非帆布解决方案,因为我找不到答案。 – 2015-11-23 19:56:05
我也有这个相同的问题。请@PhoenixRizin你最终选择了什么方法? – 2016-11-29 03:40:40