渲染HTML(带有javascript)和转换为图像

渲染HTML(带有javascript)和转换为图像,第1张

概述我有一个包含 Javascript代码的HTML页面.它需要首先渲染才能转换为图像. 我知道像wkhtmltoimage,PhantomJS,khtmltopng,webkit2png,PrinceXML和html2image这样的项目.我已经实现了其中的一些,但我试图找到一个纯Java解决方案,不必使用Process来执行命令.任何帮助都会很棒,谢谢! 编辑:我调查了Cobra,但似乎JS支持仍 @H_301_0@ @H_301_0@ 我有一个包含 Javascript代码的HTML页面.它需要首先渲染才能转换为图像.

我知道像wkHTMLtoimage,PhantomJs,kHTMLtopng,webkit2png,PrinceXML和HTML2image这样的项目.我已经实现了其中的一些,但我试图找到一个纯Java解决方案,不必使用Process来执行命令.任何帮助都会很棒,谢谢!

编辑:我调查了Cobra,但似乎Js支持仍然在dev中,并且它不能正确解析我的HTML文件.

或者,如果还有其他方法,请告诉我.我只是想找到最好的解决方案.

解决方法 没有纯Java解决方案 – 没有人用Java编写支持HTML 5的浏览器.

我会尝试以下两种方法之一:

>使用env.Js rhino模拟可以运行JavaScript的浏览器.例如,这应该为您提供一个可以使用FlyingSaucer渲染的DOM.
>将SWT添加到类路径(加上平台的二进制文件).它包含一个浏览器组件,它使用系统的浏览器到render URLs or an HTML string.

您可能需要SWTBot以无头模式运行浏览器.

如果这不起作用并且你在linux上,那么你可以启动一个内存中的X服务器Xvfb来打开你的浏览器.或者,您可以使用vncserver在服务器上启动桌面.

[编辑] project phantomjs可能会做你想要的:

PhantomJs (www.phantomJs.org) is a headless WebKit scriptable with JavaScript or CoffeeScript.
[…]
Use cases: headless web testing,Site scraPing,Page rendering
Multiplatform,available on major operating systems: windows,Mac OS X,linux,other Unices
Fast and native implementation of web standards: DOM,CSS,JavaScript,Canvas,SVG. No emulation!
Pure headless (X11) on linux,IDeal for continuous integration systems. Also runs on Amazon EC2.

quickstart page解释了如何加载网页并将其渲染为图像.

@H_301_0@ 总结

以上是内存溢出为你收集整理的渲染HTML(带有javascript)和转换为图像全部内容,希望文章能够帮你解决渲染HTML(带有javascript)和转换为图像所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1059059.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存