java之如何将带有 CSS3 和 SVG 的 HTML 转换为图像之最好是从 Java

think 阅读:25 2023-09-07 20:43:31 评论:0

我正在尝试找到一种快速高效地大规模栅格化 HTML 的方法。这最好使用 Java,但我也愿意接受其他选项。

给定一个包含 CSS3(包括 3D 转换和 SVG)的 HTML 输入,我想创建一个 PNG,它可以提供给旧浏览器或用作社交媒体上的缩略图。我的想法是,我可能在网页上有一个 SVG,然后使用 CSS3 提供 3D 透视图,我想要它的图像。

是否有纯 Java 方法来做到这一点?我想在服务器环境( headless )中进行这些转换。如果不是,像 PhantomJS 这样的东西,但是 doesn't support CSS 3D transforms .当然,我可以使用 Batik 将 SVG 转换为图像,但这里的关键是使用 CSS 3D 转换来栅格化 HTML。

如果我可以使用带有 CSS3 或 SVG 动画的页面并从中创建多个帧来制作动画 gif,则可加分。

请您参考如下方法:

你可以使用 nodeshot直接支持 CSS 3D 和 HTML5 或尝试 slimer-js (我没有仔细检查过这个)。此外,一旦你截取了屏幕截图,你就可以使用 FFMPEGcombine the images into an animated GIF .


标签:CSS
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号