我是靠谱客的博主 风中未来,最近开发中收集的这篇文章主要介绍imagefttext()函数字体文件路径的问题 Could not find/open font 或Invalid font filename,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
今天,学习php的验证码的时候,遇到一个问题。
<?php
$i=imagecreatetruecolor(500,500); //空白画布,默认背景色黑色
$white=imagecolorallocate($i,255,255,255); //给画布分配颜色,此处为白色
imagefill($i,0,0, $white); //imagefill(image, x, y, color)
$red=imagecolorallocate($i, 255, 0, 0);
imagefttext($i, 24, 30, 90,90, $red, "D:ApachehslGDmsyh.ttf","hello"); //此处需使用绝对路径
header("content-type:image/png"); // 让浏览器按照图像执行D:ApachehslGD
imagepng($i);
?>
imagefttext($i, 24, 30, 90,90, $red, “D:ApachehslGDmsyh.ttf”,“hello”);
我最开始使用的是相对路径,报错,如图所示
后来改成了绝对路径,能够正常显示了。
原本我以为这个问题解决了,可我觉得把网页文件和字体文件msyh.ttf放在同一个目录下不太好,所以在当前文件夹下建了一个子文件夹fonts,把msyh.ttf放到了fonts文件夹下,同时上面的代码中,字体文件路径相应地修改为D:ApachehslGDfontsmsyh.ttf,结果又提示如下错误
下图是目录结构,我的路径没写错吧。
为什么呀?字体文件必须要和php文件在一个文件夹下才可以吗?后来终于找到解决办法了,使用函数realpath后,问题解决,不再报错。
imagefttext($i, 24, 30, 90,90, $red, realpath("fontsarial.ttf"),"hi");
最后
以上就是风中未来为你收集整理的imagefttext()函数字体文件路径的问题 Could not find/open font 或Invalid font filename的全部内容,希望文章能够帮你解决imagefttext()函数字体文件路径的问题 Could not find/open font 或Invalid font filename所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复