imagefttext()和imagettftext()给出了奇怪的结果

时间:2014-10-24 13:15:46

标签: php

我遇到了让imagefttext()imagettftext()在php中工作的问题。

这是与imagettftext() not working类似的问题 但是我没有给出错误。我将简化我的代码,以显示它的基础。 我试过下面的每一行。

没有错误:

imagefttext($image2, 20, 0, 0, 20, $white , 'Alien-Encounters-Regular', "testing");

imagefttext($image2, 20, 0, 0, 20, $white , 'Alien-Encounters-Regular.ttf', "testing");

imagefttext($image2, 20, 0, 0, 20, $white , './Alien-Encounters-Regular.ttf', "testing");

imagettftext($image2, 20, 0, 0, 20, $white , 'Alien-Encounters-Regular', "testing");
imagettftext($image2, 20, 0, 0, 20, $white , 'Alien-Encounters-Regular.ttf', "testing");
imagettftext($image2, 20, 0, 0, 20, $white , './Alien-Encounters-Regular.ttf', "testing");

以上所有产生一系列白色盒子,应该有一个字母。为了进一步排除故障,我将上面的每一行都上传并上传并尝试了。然后我将字体文件名中的“A”更改为“a”,但没有一个工作告诉我这是一个基于Unix的服务器。 (上限问题)下面我将发布一个生成带文本图像的代码。

imagestring( $image2, 4, 10, 5, "testing" , $white );

我知道FreeType已安装到服务器上,否则当我尝试使用它时,它甚至不会给我一个图像。我没有尝试过另一种设置字体文件的方法,因为在这种情况下不需要。 (无论如何它会读取文件。否则会给我一个错误。)

enter image description here

更新:由于Elias,现在已经解决了这个问题,我从约1500行代码中获得了一小部分代码,这些代码是旧代码的一部分。此代码为imagealphablending($image2, false)imagettftext()以及imagefttext()不支持alphablending(设置为false。)我删除了代码,现在它按预期工作。请参阅下文,了解它现在的样子。

enter image description here

1 个答案:

答案 0 :(得分:0)

这些是可能相关的一些问题:

  • 找不到字体文件
  • 无法处理字体文件
  • 混合模式设置不正确(imagealphablending()