imagettftext не работает - PullRequest
       30

imagettftext не работает

1 голос
/ 12 августа 2011

Я пытался написать текст на изображении только для целей тестирования, потому что моя установка Zabbix не пишет текст на графиках. Я скопировал приведенный ниже код с сайта php.net (http://php.net/manual/en/function.imagettftext.php)

<?php
// Set the content-type
header('Content-Type: image/png');

// Create the image
$im = imagecreatetruecolor(400, 30);

// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);

// The text to draw
$text = 'Testing...';
// Replace path by your own font path
$font = '/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf'; 

// Add some shadow to the text
imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);

// Add the text
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);

// Using imagepng() results in clearer text compared with imagejpeg()
imagepng($im);
imagedestroy($im);
?>

У кого-нибудь есть идея?

Ответы [ 3 ]

3 голосов
/ 16 августа 2011

Я выяснил, в чем здесь проблема. Разрешения на доступ к файлу TrueType. PHP не мог получить доступ к файлу, поэтому он не мог писать.

Я не видел проблемы, потому что я не работал с E_ALL. Теперь все работает гладко

1 голос
/ 23 января 2015

Моя проблема была неправильным смещением. На изображении не было ничего, ни текста, ни ошибок в исходном коде, просто пустой файл. Пути были правильными. Я думал, что в шрифте ttf произошла ошибка, но оказалось, что это было неправильное позиционирование.

Вот что помогло мне увидеть немного текста:

imagettftext($im, 20, 0, 20, 20, $fg, $font, $text);

Это показывает немного текста в правом верхнем углу.

Полный рабочий код:

    putenv('GDFONTPATH=' . dirname(__FILE__));
    $font = 'arial'; // located next to the script
    imagettftext($im, 20, 0, 20, 20, $fg, $font, $text);
0 голосов
/ 12 августа 2011

Это функция GD, и вам потребуется установить php-gd с поддержкой gettext & ttf.

- $

...