在使用imagettftext()函数生成包含汉字的图片时,在本地测试正常,上传到空间后运行却报如下错误

查看官方手册:

When using versions of the GD library lower than 2.0.18, a space character, rather than a semicolon, was used as the ‘path separator’ for different font files. Unintentional use of this feature will result in the warning message: Warning: Could not find/open font. For these affected versions, the only solution is moving the font to a path which does not contain spaces.

说是因为如果GD库的版本过低的话,字体文件的路径中不能包含有空格。

但是我想我空间的GD库不能那么低啊,而且字体文件路径中也没有空格,然后突然想到,linux/unix主机下文件名是区分大小写的,空间内字体文件的名称是SIMFANG.TTF,而我在使用它的时候用的是小写,所以会找不到字体文件,报此错误。

还曾经遇到一个错误是字体乱码的问题,更换了一个字体就好啦。。

下边贴上我的代码吧,把汉字写到一个白色背景的图片上并写成文件t.jpeg,(该文件目录下有字体文件SIMFANG.TTF);供参考。

亲测,正常可用。