GD生成验证码在win下Could not read font,困扰好多天了,丢到linux上面就正常了

使用gd生成验证码的时候,找不到字体
我之前用函数式封装的,正常使用
现在丢到laravel里改成了类,不行了
异常:imagettftext(): Could not read font
无法读取
如果是找不到文件的话应该是
异常:imagettftext(): Invalid font filename
确认文件名没有错
确认是绝对路径,尝试了D:PHPSpacenovelpublicfontcac.ttf
并且dd(is_file(var))是true
请大神再看看 我多放几张图片 描述详细一点
https://img3.mukewang.com/5c8f59ef0001f00106910126.jpg
https://img1.mukewang.com/5c8f59f0000162bb08000249.jpg
https://img4.mukewang.com/5c8f59f20001b87d08000387.jpg
https://img3.mukewang.com/5c8f59f30001268808000310.jpg
https://img.mukewang.com/5c8f59f4000174de05610307.jpg

https://img1.mukewang.com/5c8f59f60001464208000290.jpg

https://img3.mukewang.com/5c8f59f8000134c908000294.jpg

牧羊人nacy
浏览 607回答 6
6回答

大话西游666

要写绝对路径。你以为代码和ttf在一个文件夹就是同级了。说不定你一请求,发现原来代码的默认地址是项目的public目录呢,所以,这种事情要写绝对路径

陪伴而非守候

文件路径要写对,放个绝对路径

Smart猫小萌

出现这个问题,一般有两种可能:一、字体文件书写错误,例如,world.ttf写成了wrold.ttf,误差。二、路径错误,用绝对路径。

Qyouu

var_dump(is_file($font_file));返回什么

泛舟湖上清波郎朗

楼上说的都对,你的路径写的有问题

慕桂英4014372

我到底都没有发现问题出在哪里,于是我一气之下把操作系统换成了Ubuntu~~
打开App,查看更多内容
随时随地看视频慕课网APP