Предупреждение: imagettftext() [функция.imagettftext]: не удалось найти / открыть шрифт в /home/a2424901/public html / index.php on line 35
<?php
session_start();
require_once 'facebook.php';
$app_id = "418907881455014";
$app_secret = "36389d2c4caaf6de86982cb87686a494";
$redirect_uri = 'http://gooogle12.comuf.com';
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
'cookie' => true
));
$user = $facebook->getUser();
$user_profile = $facebook->api('/me');
$coded = $_REQUEST['code'];
$access_token = $facebook->getAccessToken();
$name = "".$user_profile['name']."";
$fbid = "".$user_profile['id']."";
function RandomLine($filename) {
$lines = file($filename) ;
return $lines[array_rand($lines)] ;
}
$reason = RandomLine("reason.txt");
$canvas = imagecreatefromjpeg ("bg.jpg"); // background image file
$black = imagecolorallocate( $canvas, 0, 0, 0 ); // The second colour - to be used for the text
$font = "Arial.ttf"; // Path to the font you are going to use
$fontsize = 20; // font size
$birthday = "".$user_profile['birthday']."";
$death = "- ".date('d/m/Y', strtotime( '+'.rand(0, 10000).' days'))."";
imagettftext( $canvas, 22, -1, 110, 120, $black, $font, $name ); // name
imagettftext( $canvas, 22, -1, 110, 170, $black, $font, $birthday ); // birthday
imagettftext( $canvas, 22, -1, 255, 172, $black, $font, $death ); // death
imagettftext( $canvas, 20, -1, 110, 220, $black, $font, $reason ); // reason
$facebook->setFileUploadSupport(true);
//Create an album
$album_details = array(
'message'=> 'How will you die?',
'name'=> 'How will you die?'
);
$create_album = $facebook->api('/me/albums', 'post', $album_details);
//Get album ID of the album you've just created
$album_uid = $create_album['id'];
//Upload a photo to album of ID...
$file='img/'.$fbid.'.jpg'; //Example image file
$photo_details = array( 'message'=> 'Find...51', 'image' => '@'.realpath($file));
$upload_photo = $facebook->api('/'.$album_uid.'/photos', 'post', $photo_details);
enter code here
ImageDestroy( $canvas );
header("Location: http://facebook.com".$fbid."&photoid=".$upphoto."")
?>
Ну я использую этот PHP код, чтобы сделать приложение facebook.Я загрузил шрифт Arial.ttf
в корневой каталог моего сайта. Но все же я показываю ошибку- Warning: imagettftext() [function.imagettftext]: Could not find/open font in /home/a2424901/public_html/index.php on line 35
. Я пытался изменить дело, но у меня ничего не вышло. Где я ошибся в этом коде ?
5 ответов
в зависимости от того, какую версию библиотеки GD использует PHP, когда fontfile не начинается с ведущего / затем .ttf будет добавлен к имени файла, и библиотека попытается найти это имя файла по пути шрифта, определяемому библиотекой.
это, по-видимому, означает, что файл шрифта должен быть абсолютным путем, и если это не так, функция добавит другой .ttf
на конец он.
указать полный путь к файлу шрифта.
$font = "/home/a2424901/public_html/Arial.ttf";
или не указывать .ttf
и с помощью GDFONTPATH
. документация рекомендует следующее:
во многих случаях, когда шрифт находится в том же каталоге, что и скрипт, использующий его, следующий трюк облегчит любые проблемы с включением.
putenv('GDFONTPATH=' . realpath('.'));
$font = "Arial";
добавить к ответу user2724960;
Изменение имени шрифта на __DIR__ . '/graph/fonts/someFont.ttf'
сделал это для меня.
вся строка:
$myPicture->setFontProperties(array("FontName"=>__DIR__ . '/graph/fonts/someFont.ttf',"FontSize"=>14));
Не забудьте заменить "someFont " С именем файла шрифта (по умолчанию: "Forgotte")
Если вы используете pChart, используйте это:
$myPicture->setFontProperties(array("FontName"=>"../fonts/Forgotte.ttf","FontSize"=>11));
У меня была такая же проблема. Мое имя шрифта
Titr.TTF
и я изменил его на
Titr.ttf
и работал отлично.