在我的Rails应用程序中,我需要保存一些网页并将它们作为图像显示给用户。例如,如何将www.google.com作为图片保存?如何将我的Rails应用程序中的网页保存为图像?
1
A
回答
0
你不能轻易做到(可能根本无法做到)。 每个页面只是一个文本 - html数据。您想要制作图像的视图是渲染页面。浏览器使用像HTML解析,JavaScript解析,CSS解析,字体渲染等技术吨呈现页面。要制作谷歌页面的屏幕截图 - 你需要做的所有渲染在内存中的某个地方,然后截图呈现页。
这个任务几乎是不可能的(没有什么是完全不可能的)。 如果你真的渴望捐出大量的时间来完成这个任务 - 你应该这样做: 1)找到一些开源渲染引擎。 Firefox会做。 2)找到一些方法来在ruby-on-rails和那个引擎之间进行通信。 3)将它们连接在一起并查看结果。
但是,我看到步骤1和2几乎不可能。
1
在纯Ruby中难以做到,因此您需要为此使用外部服务。例如,Browsershots这样做,看起来他们有一个api,尽管我自己并没有使用它。也许别人可以用另类但类似的服务加入。
您还希望readup on delayed_job或类似的东西,以确保您访问这些页面图像作为后台任务,并且它不会干扰您的实际应用程序。
7
有一个名为CutyCapt的命令行实用程序,它使用WebKit-Rendering引擎将HTML页面呈现为各种图像格式。也许这是给你的? http://cutycapt.sourceforge.net/
0
相关问题
- 1. 如何将网页保存为网络应用程序中的图像
- 2. 回形针将不保存图像中的Rails应用程序
- 3. 如何在我的应用程序中保存图像(路径)?
- 4. 将Xaml和InkCanvas保存为UWP应用程序中的图像
- 5. 如何将图片保存到我的应用程序中?
- 6. 如何将图像保存到我的应用程序的tmp目录中?
- 7. 如何将网页保存为图片
- 8. 如何使用PHP将网页保存为图像文件?
- 9. 如何在asp.net中将网页导出/保存为图像
- 10. 如何将图像文件保存到应用程序中?
- 11. 我应该在哪里将图像保存到我的iPhone应用程序中?
- 12. 将我的网页中的图像对象保存到文件
- 13. 如何将网页中的图像保存到服务器?
- 14. 保存应用程序内的图像
- 15. 将图像保存到网络应用程序
- 16. ios应用程序中保存图像
- 17. 如何保存和加载应用程序中的图像?
- 18. 如何覆盖/删除应用程序中保存的图像
- 19. 如何将网页导出/保存为图像?
- 20. 如何将图像保存在WPF应用程序在C#
- 21. 我可以编程方式将网页的一部分保存为图像吗?
- 22. 将图像保存到数据库的网络摄像头应用程序
- 23. 如何将图像保存为图像
- 24. QTP如何从网页保存图像
- 25. 如何保存我的安卓网络应用程序的Cookie
- 26. 应用程序将多个图像保存到图库中
- 27. 将html5 canvas输出保存到我的rails应用程序
- 28. 将网页图像保存到Sqlite
- 29. 如何将PDF保存为MongoDB Node应用程序中的BLOB
- 30. 如何在我的应用程序保存网格背景
时髦的! Janak,你仍然想用它作为后台任务,但我认为这可能比外部服务更适合你。 – PreciousBodilyFluids 2010-05-29 09:03:57