2009-11-13 102 views
0

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

我想要做的是创建图形的图像(通过jQuery绘制)并将其传递到PDF上,如我似乎无法得到jQuery来的PDF显示效果..

+0

也许这个线程可以有一些帮助:http://stackoverflow.com/questions/839216/create-an-image-of-a-div-in-javascript-gif-png – 2009-11-13 00:43:44

+0

你看我看看谢谢,但我不认为我可以用它来满足我需要的功能 – SoulieBaby 2009-11-13 00:44:30

+0

您可以更改您的应用程序以在服务器端生成图形还是必须在jQuery中完成? – JPCosta 2009-11-13 00:49:43

回答

2

由于安全风险,这是不可能获取JavaScript制作网页的截图。这将允许你窃取信用卡信息等等。你可以使用一个活动的X控件或类似的东西,但客户端必须有意识地安装它才能工作。

在PHP中,你可以创建一个图像,并将其放置在网页上,但同样,你不能看到什么是客户端的屏幕上。它必须在发送到客户端之前在服务器上完成。

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

你也许能够模仿什么的jQuery在你的脚本做什么,但它会在您的应用程序设计的转变。

+0

嗯,我真的只是想让我的jQuery图形变成一个图像莫名其妙..我不知道不介意,如果它是在客户端看到它之前完成的..只是不知道如何做到这一点:( – SoulieBaby 2009-11-13 00:47:05

+0

在临时目录中通过PHP传递到pdf .. – SoulieBaby 2009-11-13 00:51:04

+0

我编辑了一些更多的信息后直接通过PHP绘制图表 - 可能有帮助 – 2009-11-13 00:54:02

1

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

如果你描述什么样的图表,你到底产生,你有什么样的服务器端选项,我相信你会得到一些具体的提示。

1

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

http://graphpite.sourceforge.net/

如果碰上你在哪里上的客户端做处理问题,不存在于服务器上(即:总结行或从cookies中获取用户设置),也许你需要考虑将这些数据传回服务器,并让你的主机处理它(毕竟,这就是为什么你要运行一台有大量内存和大的服务器的原因CPU,来紧缩数字)。

1

如果您的JavaScript绘制画布上的图表,可以序列画布上,然后使用POST发送到服务器。

我不知道的jQuery可以画在画布上的图表,但如果图是一个简单的,你可以自己可能是代码帆布已经绘图工具。

显然,这只适用于支持画布的浏览器。