我能够在本地主机上很好地渲染PHP GD图像,但是当我将其上传到Linux Ubuntu Debian LAMP服务器时,字体或文本丢失了,只显示了背景色。因此,正在生成图像,但是它只是丢失了图像中的文本。
我目前已安装PHP 7.2和GD 7.2库。它还在我的php.ini文件中显示了已启用它,甚至删除了分号以确保也已启用。
这是我正在使用的代码:
<?php
//create the php image
header('Content-type: image/jpeg');
$img = imagecreate(200, 60);
$background = imagecolorallocate($img, 1,49,31);
$textColor = imagecolorallocate($img, 255, 255, 255);
$font = "roboto.ttf";
imagettftext($img, 28, 10, 40, 50, $textColor, $font, "MY TEXT GOES HERE!");
imagejpeg($img);
imagedestroy($img);
?>
还有其他提示会阻止文本显示吗?
经过几个小时的研究,我解决了这个问题。
当您在VPS上有字体文件并使用Linux时,您需要改用以下文件路径:
$ font =“ ./myfont.ttf”
如果您不使用点号和正斜杠,则不会在服务器上找到该文件。