这是Link我正在关注创建一个图像,但是我的GD已安装并正常工作,因为我测试了第一个示例,但此代码断开并标记" 图像可以不显示,因为它包含错误"
代码 -
<?php
//phpinfo();
//Report any errors
ini_set("display_errors", "1");
error_reporting(E_ALL);
//Set the content type
header('content-type: image/png');
//Create our basic image stream 300x300 pixels
$image = imagecreate(300, 300);
//$image = imagecreatetruecolor(300, 300);
//Set up some colors, use a dark gray as the background color
$dark_grey = imagecolorallocate($image, 102, 102, 102);
$white = imagecolorallocate($image, 255, 255, 255);
//Set the path to our true type font
//$font_path = 'advent_light';
//$font_path = 'advent_light.ttf';
//$font_path = 'arial';
$font_path = 'arial.ttf';
//Set our text string
$string = 'Swapnesh!';
//Write our text to the existing image.
imagettftext($image, 50, 0, 10, 160, $white, $font_path, $string);
//Create our final image
imagepng($image);
//Clear up memory
imagedestroy($image);
?>
我试过并用Google搜索但没有解决方案的内容如下 - :(
我的PHP版本 - PHP版本5.3.8
仍无法找到问题:(
错误
EDITS -
版本1.0
这就是我的拯救。
有关图片的更多信息 -
保存页面 - 这是文件保存的名称 - create_png.php.png
版本1.1
<br />
<b>Warning</b>: imagettftext() [<a href='function.imagettftext'>function.imagettftext</a>]: Invalid font filename in <b>C:\xampp\htdocs\Core\CoreFiles\create_png.php</b> on line <b>20</b><br />
<br />
<b>Warning</b>: imagettftext() [<a href='function.imagettftext'>function.imagettftext</a>]: Invalid font filename in <b>C:\xampp\htdocs\Core\CoreFiles\create_png.php</b> on line <b>23</b><br />
感谢@cryptic
和@user1711126
解决方案 -
实际上缺少字体文件,我们需要将.ttf文件放在文件夹下以使此代码正常工作或设置路径使其工作。
答案 0 :(得分:4)
保存图像文件中的错误并在文本编辑器(如记事本或等效文件)中打开它,看看是否有任何PHP错误。发生错误并输出文本然后破坏文件。这样做,你会发现错误是什么。
答案 1 :(得分:2)
我严重怀疑你的字体路径,请仔细检查你的字体和文件在同一目录中,如果是,那么改变这样的路径,
$font_path = './arial.ttf';
编辑(根据聊天中的讨论)
你必须要一个ttf文件才能使用imagettftext()函数将arial.ttf文件放在文件所在的文件夹中
答案 2 :(得分:2)
我认为@cryptic是对的,你需要使用类似
的字体使用的真实路径$font_path = basename(dirname(__FILE__)).'/arial.ttf';
请确保目录中存在该字体。