2010-12-11 37 views
0

我想知道是否有任何方法将整个HTML页面转换为PNG(或其他类型的图像?)我试图创建PDF,但它是作为文本拉动我的样式,但我想样式保持与页面相同(cufon和全部)。任何帮助,将不胜感激! :)将网页转成图像?

+0

某些浏览器支持将文档打印到PDF的选项。你尝试过吗? – strager 2010-12-11 06:07:21

+0

我试图在飞行中做到这一点,所以创建PDF页面,然后由用户打开/下载。 – SoulieBaby 2010-12-11 06:09:26

+0

哦,那么一个自动化解决方案?像[Browsershots](http://browsershots.org/)这样的服务会起作用吗? – strager 2010-12-11 06:12:19

回答

0

这看起来不直截了当。后端(PHP等)不执行渲染,布局。它仅仅产生内容。该网站的

布局和视觉方面由您的客户端(浏览器)完成,后端将无法访问这种方式。

然而,鉴于一个HTML文件,也有可能导致其成PDF像Prince XML,似乎能够这个库。

0

生成图像相同,甚至附近的唯一途径,是什么浏览您的网站是启动浏览器,并采取截图当访问者看到了自己的浏览器。您需要浏览器的渲染引擎来渲染页面。你找到的所有图书馆在没有浏览器的情况下创建与访问者看到的内容完全不同的内容,并且不会呈现cufon或其他奇特的东西。

公司,提供网页的截图预览现在运行多个服务器,每个服务器上运行多个虚拟计算机,每运行一个完整的操作系统和实时网络浏览器。他们拥有所有这些系统拉动工作,在真正的浏览器中打开网页,截图和保存图像。你不会用一点PHP脚本复制它。

http://ipinfo.info/html/rendering_services.php

0

打开网页到图像和PDF文件是使用PHP皇家疼痛。解决方案通常需要操作系统级别的脚本,虚假的打印机驱动程序或屏幕截图,这可能会导致相当脆弱的设置。几年前我遇到了同样的问题,并开始使用原生PHP扩展,利用Gecko引擎将HTML呈现为PDF,但从未完成。

我看到的最佳答案不是将完整的网页转换为PDF,而是将XML转换为PDF。 XEP by RenderX是Apple用来从XML源生成许多格式的开发者文档的商业工具,包括HTML和精美呈现的PDF。将XEP工具与PHP结合使用的好处在于,PHP可以很好地处理XML,因此您可以将生成的XML传递给XEP二进制文件,让它转换为PDF,然后使用PHP处理生成的PDF文件。