2009-11-13 103 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可以畫在畫布上的圖表,但如果圖是一個簡單的,你可以自己可能是代碼帆布已經繪圖工具。

顯然,這隻適用於支持畫布的瀏覽器。