在localhost上工作但在实时服务器上不工作的字体

时间:2011-01-11 13:22:03

标签: php fonts

我正在使用imagettftext()在图片上创建文字。我使用了新的罗马字体,应用程序在我的开发机器上正常工作但在实时环境中没有。

请认真。是因为我的开发。 windows中的机器和live是linux吗?

请帮助

实际问题是我的locahost上的文字显示为“Monster”,但在实时服务器“Mo nster”上,这不仅仅是O,还有其他字母......

$font = './fonts/times.ttf';    

$bbox = imagettfbbox(30, 0, $font, $word);

$x = $bbox[0] + (imagesx($src) / 2) - ($bbox[4] / 2);
$y = $bbox[1] + (imagesy($src) / 2) - ($bbox[5] / 2)+212;

imagettftext($src, 30, 0, $x, $y, $color, $font, $word);

$bbox2 = imagettfbbox(18, 0, $font, $definition);

$x = $bbox2[0] + (imagesx($src) / 2) - ($bbox2[4] / 2);
$y = $bbox2[1] + (imagesy($src) / 2) - ($bbox2[5] / 2)+245;

imagettftext($src, 18, 0, $x, $y, $white, $font, $definition);

3 个答案:

答案 0 :(得分:1)

我有同样的错误,在我的情况下问题是字体定义扩展。这是ttf,而不是Ttf。检查文件扩展名的大小写。

答案 1 :(得分:0)

是的,可能是Linux服务器上没有安装该字体(实时)

答案 2 :(得分:0)

我认为这是一个很长的回来,问题是与PHP版本&我看到一个关于这个问题的报道错误&快速修复

链接添加在

下面

错误: http://bugs.php.net/bug.php?id=51571

解决方案:(不改变PHP版本)

http://www.php.net/manual/en/function.imagettftext.php(参见sk89q的解决方案)

由于