MagickWand for PHP/Windows (php_magickwand_q16_st.dll)
MagickWand for PHP/Windows (php_magickwand_q16_st.dll) 下載2008-11-24 17:42距上次在 Windows 下編譯 Magickwand for PHP 差不多過去快一年了,ImageMagick 升級到了 6.3.x 系列,Magickwand for PHP 也發(fā)布了最終的 1.0.5 版本,原先的 DLL 已經(jīng)不能使用了。這期間,不斷有人寫信過來索要新版本,而 ImageMagick 官方論壇卻始終沒有人更新。
說實話,我現(xiàn)在完全在 Linux/FreeBSD 下開發(fā),所以已經(jīng)徹底不再使用 Magickwand for Windows 了;而且這個編譯工作比較費時間,不太愿意做了;今天又花費了我一整天時間生成了一個最新(也是最后的)版本,使用 PHP 5.2.4 + ImageMagick 6.3.5 + MagickWand 1.0.5 + VC6 編譯生成。
php_magickwand_dyn.dll(252.0K,SHA1:27e825d61c177442a1cc48360d4ff0741f5e4cc5)
php_magickwand_q16_st.dll(4.1M,SHA1:5549f82fab90e733bad438f3b3b09fedbe23d5fe)
php_magickwand_q8_st.dll(4.1M,SHA1:1f9b61b7bf3da8be66ca182357b081c7b591e8b8)
»»點此查看全部文件««
編譯環(huán)境:Windows 2000,Visual Studio 6.0,PHP-5.2.4,ImageMagick-6.3.5,Magickwand-1.0.5;
測試環(huán)境:在 Windows 2000 + Apache 2.0.59 + PHP 5.2.4 環(huán)境下測試通過;
在 此鄭重申明:這將是我提供的最后一個版本,以后不再花費無謂的時間在這上面(感覺官方論壇對 MagickWand for Windows 沒有任何興趣)。我建議,需要做 MagickWand 開發(fā)的朋友,盡量轉(zhuǎn)到 Linux/FreeBSD 下開發(fā),軟件的編譯和安裝更加方便,相關(guān)資料也更好找。
Update@2007-09-27 22:03
一個叫 Cully 的新西蘭朋友下載我生成的 DLL 后,發(fā)現(xiàn)處理上傳圖片會產(chǎn)生一個錯誤:
"Fatal error: magickreadimage(): C API cannot read the format "D:\PHP5\tempupload\0704I02C0681.jpg" (reason: UnableToOpenBlob `D:E:\PHP5\tempupload\0704I02C0681.jpg': Invalid argument) [on C source line 217]"
研 究了一下 MagickWand 的源代碼,同時也對比了一下 0.1.9 的舊代碼,發(fā)現(xiàn) MagickWand 作者將原先針對 Win32 平臺的代碼刪除了,Windows 下的文件路徑帶有盤符(冒號),這個和 ImageMagick 辨認圖片格式發(fā)生沖突,致使新的 MagickWand 會錯誤的處理文件路徑為圖像格式,引起讀取失敗。我將部分舊代碼合并到新版本后發(fā)現(xiàn)可以修正 Cully 的問題,但我沒有把握里面有多少東西需要修正。暫時放棄吧。
我現(xiàn)在不敢斷言,但懷疑 MagickWand 的作者可能想要放棄 Windows 平臺,或者說,他們就沒有在 Windows 下進行測試。That’s bad news.
Update@2007-09-28 09:31
經(jīng)過排查,發(fā)現(xiàn)只有在 read_image 的時候做了特殊處理,所以我直接制作了一個補丁,重新編譯后,發(fā)給 Cully 測試通過。OK,發(fā)布最后一次更新,所有下載文件更新到最新補丁版本。
另外,我也將自己制作的 MSVC6 的工程文件也放到了下載目錄中,有興趣的朋友可以自己拿回去自己編譯(自己制作一個工程文件真的那么難么?呵呵)。
說實話,我現(xiàn)在完全在 Linux/FreeBSD 下開發(fā),所以已經(jīng)徹底不再使用 Magickwand for Windows 了;而且這個編譯工作比較費時間,不太愿意做了;今天又花費了我一整天時間生成了一個最新(也是最后的)版本,使用 PHP 5.2.4 + ImageMagick 6.3.5 + MagickWand 1.0.5 + VC6 編譯生成。
php_magickwand_dyn.dll(252.0K,SHA1:27e825d61c177442a1cc48360d4ff0741f5e4cc5)
php_magickwand_q16_st.dll(4.1M,SHA1:5549f82fab90e733bad438f3b3b09fedbe23d5fe)
php_magickwand_q8_st.dll(4.1M,SHA1:1f9b61b7bf3da8be66ca182357b081c7b591e8b8)
»»點此查看全部文件««
編譯環(huán)境:Windows 2000,Visual Studio 6.0,PHP-5.2.4,ImageMagick-6.3.5,Magickwand-1.0.5;
測試環(huán)境:在 Windows 2000 + Apache 2.0.59 + PHP 5.2.4 環(huán)境下測試通過;
在 此鄭重申明:這將是我提供的最后一個版本,以后不再花費無謂的時間在這上面(感覺官方論壇對 MagickWand for Windows 沒有任何興趣)。我建議,需要做 MagickWand 開發(fā)的朋友,盡量轉(zhuǎn)到 Linux/FreeBSD 下開發(fā),軟件的編譯和安裝更加方便,相關(guān)資料也更好找。
Update@2007-09-27 22:03
一個叫 Cully 的新西蘭朋友下載我生成的 DLL 后,發(fā)現(xiàn)處理上傳圖片會產(chǎn)生一個錯誤:
"Fatal error: magickreadimage(): C API cannot read the format "D:\PHP5\tempupload\0704I02C0681.jpg" (reason: UnableToOpenBlob `D:E:\PHP5\tempupload\0704I02C0681.jpg': Invalid argument) [on C source line 217]"
研 究了一下 MagickWand 的源代碼,同時也對比了一下 0.1.9 的舊代碼,發(fā)現(xiàn) MagickWand 作者將原先針對 Win32 平臺的代碼刪除了,Windows 下的文件路徑帶有盤符(冒號),這個和 ImageMagick 辨認圖片格式發(fā)生沖突,致使新的 MagickWand 會錯誤的處理文件路徑為圖像格式,引起讀取失敗。我將部分舊代碼合并到新版本后發(fā)現(xiàn)可以修正 Cully 的問題,但我沒有把握里面有多少東西需要修正。暫時放棄吧。
我現(xiàn)在不敢斷言,但懷疑 MagickWand 的作者可能想要放棄 Windows 平臺,或者說,他們就沒有在 Windows 下進行測試。That’s bad news.
Update@2007-09-28 09:31
經(jīng)過排查,發(fā)現(xiàn)只有在 read_image 的時候做了特殊處理,所以我直接制作了一個補丁,重新編譯后,發(fā)給 Cully 測試通過。OK,發(fā)布最后一次更新,所有下載文件更新到最新補丁版本。
另外,我也將自己制作的 MSVC6 的工程文件也放到了下載目錄中,有興趣的朋友可以自己拿回去自己編譯(自己制作一個工程文件真的那么難么?呵呵)。