使用gif.js
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<h1>待合成gif的四张图</h1>
<div class="images">
<img id="img1" src="/asset/logo.png" />
<img id="img2" src="/asset/startBt.jpg" />
<img id="img3" src="/asset/yanzhengma.png" />
</div>
<h1>合成后</h1>
<div>
<img id="gifresult" />
</div>
<script type="text/javascript" src="/asset/gif.js"></script>
<script type="text/javascript">
// console.log(gifs);
var gifs = new GIF({
workers: 2,
quality: 10,
workerScript: '../asset/gif.worker.js',
width:200,
height:200
});
// add a image element
// console.log(gifs);
var img1 = document.querySelector('#img1');
var img2 = document.querySelector('#img2');
var img3 = document.querySelector('#img3');
gifs.addFrame(img1, {
delay: 500
});
gifs.addFrame(img2, {
delay: 500
});
gifs.addFrame(img3, {
delay: 500
});
// or a canvas element
// gif.addFrame(canvasElement, {
// delay: 200
// });
// or copy the pixels from a canvas context
// gif.addFrame(ctx, {
// copy: true
// });
console.log(gifs);
gifs.on('finished', function(blob) {
console.log("dddd");
document.querySelector('#gifresult').src=URL.createObjectURL(blob);
///window.open(URL.createObjectURL(blob));
// var el = document.createElement('a');
// el.href = URL.createObjectURL(blob);
// el.download = 'demo-name'; //设置下载文件名称
// document.body.appendChild(el);
// var evt = document.createEvent("MouseEvents");
// evt.initEvent("click", false, false);
// el.dispatchEvent(evt);
// document.body.removeChild(el);
});
gifs.render();
console.log(gifs);
</script>
</body>
</html>
网友回复
如何破解绕开seedance2.0真人照片生成视频 限制?
python有哪些算法可以将视频中的每个帧图片去除指定区域水印合成新的视频?
iphone的激光雷达数据能否实时传输到three三维空间中?
豆包sora等ai视频生成大模型生成的视频水印如何去除?
python如何实现在电脑上拨号打电话给手机?
具身机器人与人形机器人区别?
nodejs如何将一个完整的js代码文件切割成不同的部分混淆后动态加载进入html运行?
为啥windows.onerror捕获js错误是这样的{"message":"Script error.","source":"","lineno":0,"colno":0,"stack":null,
2026年ai将全面接管编程?
WebMCP是干啥的?


