我知道我可以在相位器或其他框架中编写自己的动画,并将其jpg保存到文件中,或使用jimp。
https://www.npmjs.com/package/jimp
但是,我想知道是否可以使用css动画,然后将前端看到的内容保存到节点后端的文件中。
是否可以使用CSS引擎来实现这一目标?
这些呢?我认为他们都在客户端制作动画。 https://blog.bitsrc.io/11-javascript-animation-libraries-for-2018-9d7ac93a2c59
我不想为每个CSS效果编写任何代码(我为Java应用程序写了很多,但仍然不令人满意)
答案 0 :(得分:1)
为了将渲染的动画保存到文件中,您需要以很高的帧频记录该网页,然后将所有捕获的帧转换为GIF等动画格式(据我所知,jpeg和png不支持动画知道)。
要捕获网页,您可以尝试phantomjs
这是一篇解释此问题的文章:Recording a Website with phantomjs and ffmpeg
var page = require("webpage").create();
page.viewportSize = { width: 640, height: 480 };
page.open("http://www.goodboydigital.com/pixijs/examples/12-2/", function() {
setInterval(function() {
page.render("/dev/stdout", { format: "png" });
}, 25);
});
phantomjs runner.js | ffmpeg -y -c:v png -f image2pipe -r 25 -t 10 -i - -c:v libx264 -pix_fmt yuv420p -movflags +faststart dragon.mp4
在此示例中,输出为mp4
,但是您可以调整命令行参数以获得gif
。