0

我想知道是否可以在 php、jquery 或 javascript 的页面内创建 div 的图像?甚至只是整个页面的屏幕截图(在我自己的服务器上 - 不是外部的)..

我想要做的是创建一个图形的图像(通过 jQuery 绘制)并将其传递给 PDF,因为我似乎无法让 jQuery 显示在 pdf 中。

4

5 回答 5

2

由于存在安全风险,无法获取 Javascript 对网页进行截图。这将允许您窃取信用卡信息等...您可以使用主动 X 控件或类似的东西,但客户端必须有意识地安装它才能使事情正常工作。

在 PHP 中,您可以创建图像并将其放置在网页上,但同样,您无法看到客户端屏幕上的内容。它必须在发送到客户端之前在服务器上完成。

这是一个可用于在 PHP 中绘制图形的库示例。 http://www.aditus.nu/jpgraph/

您可能能够在您的脚本中模仿 jQuery 正在做的事情,但它会改变您的应用程序设计。

于 2009-11-13T00:45:35.663 回答
1

If your javascript draws the graph on a canvas, you can serialize the canvas and then send it to the server using POST.

I don't know if jquery can draw the graph on a canvas, but if the graph is a simple one you could probably code it yourself as canvas has drawing tools already.

Obviously, this only works with browsers supporting canvas.

于 2009-11-13T15:51:11.380 回答
1

最好的办法是使用服务器上的 GD 库根据需要生成图形。没有实用的方法来截屏浏览器画布。查看这个 PHP 图形库,它可能是您正在寻找的:

http://graphpite.sourceforge.net/

如果您在服务器上不存在的客户端进行处理时遇到问题(即:汇总行或从 cookie 中获取用户设置),您可能需要考虑将该数据传递回服务器并让您的主机处理它(毕竟,这就是为什么您运行具有大量 RAM 和大 CPU 的服务器来处理数字)。

于 2009-11-13T04:07:45.833 回答
1

看看这篇文章:

http://www.developerfusion.com/code/181/capture-screenshot/

它不是客户端代码,但您提到了 PHP,所以服务器端代码可能是一种选择。我不认为你可以在客户端做到这一点......

于 2009-11-13T00:42:11.907 回答
1

如何使用服务器端图形生成器,例如 PHP?也许过渡很痛苦,但你会得到一个非常稳定和简单的解决方案。

如果您描述了您确切生成的图表类型以及您拥有的服务器端选项,我相信您会得到一些具体的提示。

于 2009-11-13T00:52:11.573 回答