p_w_picpathttftext和p_w_picpathfttext两个函数在生成验证码或须要向图片写入文字时候经常使用,在linux环境下只开启gd库是不够的。php
这两个函数均须要 FreeType 库支持,在函数文档中也能够找到html
因此当发现调用时报错提示函数不存在,都是由于编译时没有指定freetype库激活形成的。若是须要则必需从新编译gd库并激活freetype支持。linux
freetype库是三方库,须要单独安装,若是系统中已经安装则无需安装bash
查看命令:ide
rpm -ip freetype
或函数
whereis freetype
下载地址: https://www.freetype.org/download.html
ui
最好使用.net域名下的,.org很容易形成超时。spa
这里以:.net
https://sourceforge.net/projects/freetype/files/freetype2/2.7.1/freetype-2.7.1.tar.gz/download
unix
为例:
tar -zxf freetype-2.7.1.tar.gz cd freetype-2.7.1/builds/unix ./configure --prefix=/usr/local/freetype/2.7.1 --without-harfbuzz make make install
说明:若是不进入builds/unix目录下编译会提示:make: Nothing to be done for `unix'. 固然也没有什么影响。
安装freetype须要包:
external
bzip2
libpng
harfbuzz
能够使用yum安装,但harfbuzz在yum中没有因此须要编译安装,而编译时又须要freetype包,因此能够不安装这个包,而后在freetype编译时增长--without-harfbuzz便可。
安装好freetype后便可编译gd库,官方文档中也有说明:
因此编译gd库须要增长--with-freetype-dir=/usr/local/freetype/2.7.1/ --enable-gd-native-ttf
注意:若是freetype时默认安装无需指定目录。
编译前必定要记得 make clean 清除上次的编译内容,尤为是已经编译安装过的。
./configure 配置后能够查看 Configuring extensions 下面是否有相关成功记录:
而后
make make install
编译好后则能够查看phpinfo()
出现这个即安装成功,能够使用这两个函数。