2009-09-08 163 views
3

我正在使用我的簡單PHP驗證碼算法(http://www.source.ofitall.com/devel/captcha.php),我一直在努力嘗試並將其調整爲更具吸引力且更易於閱讀的Google樣式驗證碼。PHP功能彎曲/扭曲圖像

有沒有人知道一個功能,將採取GD圖像參考和彎曲/扭曲,谷歌風格?

+0

我試着尋找這個驗證碼的來源:http://www.captcha.ru/en/kcaptcha/,它確實有我想要的,但我有麻煩把它的翹曲代碼放入一個包含的函數。 – Sherri 2009-09-16 19:02:59

回答

3

如果你可以在你的服務器上使用ImageMagick的,你可能想給this一試:

convert koala.gif -background Blue -wave 10x64 wave.jpg 

UPDATE

如果不使用某些庫你會明顯有寫你自己的實現。

這裏有一些建議,你可以上找到有用的信息:

  • 如果你是更多的傢伙手看一下這個免費的Java實現的SwimFilterWarpFilter,可以是下載here

  • 然後有一個解釋2樣條搗蛋算法,可能做你想要的東西here

  • Here對可能適合您需求的算法(Microsoft doc文件)有很好的概述。

你應該知道,這不是容易實現的東西。但如果你對這個話題感興趣,並且確實真的需要在沒有ImageMagick的情況下生活,那麼這是你唯一的機會(據我所知)。

然後還有GD的糟糕表現..

祝你好運! :-)

+0

我喜歡這一點,並且我在其他項目中使用過ImageMagick。然而,這個驗證碼腳本旨在成爲一個可以使用的PHP腳本,我不想讓ImageMagick成爲一個需求。我見過使用正弦波移動圖像中像素的算法......我想知道是否有這樣的功能。 – Sherri 2009-09-09 13:12:33

+0

迄今爲止我嘗試過的每個主機都支持ImageMagick。我理解你的擔憂,但我認爲性能與最小可能的需求權衡是相當大的。我敦促你考慮一下,如果你真的需要使用GD來做到這一點。 – 2009-09-09 13:55:40

+0

是的,雖然ImageMagick幾乎在所有的主機上,但我試圖將這個CAPTCHA腳本作爲一個獨立的PHP函數來分發。所以雖然你的解決方案是一個明顯而簡單的解決方案,但我正在尋找GD功能。 – Sherri 2009-09-16 19:02:17