将HTML页面转换为图像

时间:2010-09-22 06:27:36

标签: php html-rendering

我想将HTML页面更改为图像。 PHP中有没有办法将HTML页面更改或保存为图像?

3 个答案:

答案 0 :(得分:0)

这并不容易;正如NullUserException在他的评论中所说,你需要在服务器端呈现HTML页面,这不是PHP(或任何其他服务器端语言)内置的。

我想到的方法是编写一个程序(可能不是在PHP中,而是在C#或C ++中运行),在您的服务器上运行,启动Web浏览器,并进行一系列屏幕捕获(可能结合页面滚动)。由于这是一个非常重要且容易出错的过程,我建议您查看能够执行此操作的第三方组件。

然后你将从PHP执行这个程序,当它运行完毕后,显示它输出的文件的结果。

答案 1 :(得分:0)

我建议你使用api的外部服务。这个列表可能是一个好的开始:http://blogs.sitepoint.com/2008/07/10/9-ways-to-put-site-screenshots-in-your-web-app/

Thumbalizr看起来很棒,他们还提供了一个php脚本,因此您可以在本地缓存图像: http://www.thumbalizr.com/apitools.php

答案 2 :(得分:0)

尝试查看browsershots.org - 如果要在本地安装,可以使用源代码。基本上它使用浏览器来截取屏幕截图,并且可以通过XML-RPC接口进行控制,您可以从PHP调用它。

正如其他人所说,这不是一项简单的工作,也不是你可以直接用PHP做的事情,所以使用外部服务。

(我不以任何方式与browsershots.org有关联)