由 老高 發表於 2014-10-03 在 代碼人生 分類
老高在新中裝台裝在一個新裝台裝點直接搜尋這個錯誤,有人說session錯誤,有的說權限錯誤等等,這不胡扯麼!只能看原始碼了,定位到檔案/include/vdimgck.php
。出錯的函數是imagettftext()
,由於織夢使用了@
將錯誤隱去,導致這次莫名的錯誤。將@
去掉,錯誤立刻出現:
Fatal error: Call to undefined function imagettftext()
現在我們就明確了,出現錯誤的原因是PHP編譯時沒有加上FreeType。
解決方法:
先編譯安裝FreeType,以2.4.0為例:
<code><span>wget http://download.savannah.gnu.org/releases/freetype/freetype-<span>2.4.<span>0.tar.bz2 <span>tar -jxf freetype-<span>2.4.<span>0.tar.bz2 <span>cd reetype-<span>2.4.<span>0 <span># 安装到/usr/local/freetype ./configure --prefix=/usr/<span>local/freetype <span>make && <span>make <span>install </span></span></span></span></span></span></span></span></span></span></span></span></span></span></code>
下面我們重新編譯PHP,加上參數--with-freetype-dir=/usr/local/freetype
<code>./configure \ <span>... \ <span>... \ --<span>with-freetype-dir=/usr/local/freetype </span></span></span></code>
再GD函式庫找到
FreeType Support說明安裝成功! 要注意的是,如果伺服器freetype的版本是1.*,那麼你可能需要改變編譯參數為
--with-ttf[=DIR]
參考:http://bbs.chinaunix.net/thread-610205-1-1.html本地 TrueType 字串函數 要啟動本地 TrueType 字串函數的支持,加上 --enable-gd-native-ttf。
字庫配置開關
FreeTypeTypeType 1.x 要啟動FreeType 1.x 的支持,加上--with-ttf[=DIR]。
FreeType 2 要啟動 FreeType 2 的支持,加上 --with-freetype-dir=DIR。
T1lib 要啟動 T1lib(Type 1 字型),加上 --with-t1lib[=DIR]。
以上就介紹了Call to undefined function imagettftext解決方法,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。
🎜