2009-08-20 39 views
5

玉以及繼承人我想在PHP做什麼:動態生成一個詞雲?

http://www.wordle.net/

我知道該怎麼做所有的GD(寫在畫布上),我的問題是實際上,要讓不同的軌道邏輯並將它們正確放置在空白的畫布上。如果有人知道一個好的網站,有一些資源,可以帶領我在正確的方向我會永遠愛你!

回答

2

您可以使用imagettfbox(另請參閱http://ruquay.com/sandbox/imagettf/)獲取您創建的標記文本的畫布邊界 - 給定字體,旋轉和大小(顯然取決於任何給定標記的出現次數)。

從這一點開始,您可以開始在雲畫布上放置標記詞(隨機? - 請參閱編輯),直到放置所有標記詞爲止。你只需要確保它們不重疊(即你可以將像素座標存儲在一個數組中)。

您需要確保的另一件事是使圖像畫布足夠大(或足夠小的字體)以容納所有標記,因此您需要預先計算(再次使用imagettfbox)確切的每個單詞的像素大小,當您達到所有單詞可以放在圖像畫布內的大小後,您可以使用imagettftext開始放置它們。

編輯

謝謝,馬丁瓦滕伯格,爲的只是扔 中心思想:您還可以通過採取看看credits,例如學到很多(也許contact the developer)在 屏幕上的東西,直到它適合。我提出我的 玻璃的哲學是「 最愚蠢的可行的事情」。

還有更多...

0

這裏是tutorial的鏈接,它使用jQuery和CSS來完成大部分工作 - 儘管如果將數據存儲在數據庫中(如本教程假設的那樣),您需要php傳遞這些值。

+0

那是一個基本的詞雲,我說的是實際編寫文本到畫布像他們這樣做。 – 2009-08-21 17:49:21