52680.fb2 Справочник по PHP - читать онлайн бесплатно полную версию книги . Страница 143

Справочник по PHP - читать онлайн бесплатно полную версию книги . Страница 143

header("Content-type: image/jpeg");

$im = imagecreate(400, 30);

$white = imagecolorallocate($im, 255, 255, 255);

$black = imagecolorallocate($im, 0, 0, 0);

// Replace path by your own font path

imagettftext($im, 20, 0, 10, 20, $black, "/path/arial.ttf",

"Testing... Omega: Ω");

imagejpeg($im);

imagedestroy($im);

?>

Следующий пример выводит строку по центру рисунка

<?php

$gi = imageCreate(200,100);

$bg = imageColorAllocate($gi,0,220,0);

$tx = imageColorAllocate($gi,25,2,228);

$w = imageSX($gi); // ширина рисунка

$h = imageSY($gi); // высота рисунка

imageFilledRectangle($gi,0,0,$w,$h,$bg);

$szf = 20; // размер шрифта

$ang = 240; // угол поворота строки

$str = "Heyou"; // текст строки

$font = "symbol.ttf" // файл шрифта

$sz = imageTTFBBox($szf,$ang,$font,$str);

$sdx = $sz[4]/2;

$sdy = ($sz[7]+$sz[3])/2;

imageTTFText($gi,$szf,$ang,$w/2-$sdx,$h/2-$sdy,$tx,$font,$str);

Header("Content-Type: image/png");

imagePng($gi,"file.png");

?>

imageTTFBBox

Расчет площади, занимаемой строкой шрифта TrueType.

Синтаксис:

array imageTTFBBox(int size, int angle, string fontfile, string text)

Эта функция ничего не выводит в изображение, а просто определяет, какой размер и положение заняла бы строка текста text размера size, выведенная под углом angle в какой-нибудь рисунок. Параметр fontfile задает абсолютный путь к файлу шрифта, который будет использован при выводе.

Возвращаемый список содержит всю информацию о размерах строки в формате, похожем на тот, что выдает функция imageTTFText(). Однако порядок точек в нем отличается.

Содержимое массива, возвращаемого функцией imageTTFBBox():

Координаты могут иметь отрицательные значения.

Функция требует библиотеки GD и FreeType.

imagePSLoadFont

Загрузка из файла шрифта PostScript Type 1.

Синтаксис:

int imagePSLoadFont(string filename)

Возвращает дескриптор загруженного шрифта или FALSE при ошибке (также выводится предупреждение).

<?php

header("Content-type: image/jpeg");

$im = imagecreate(350, 45);

$black = imagecolorallocate($im, 0, 0, 0);

$white = imagecolorallocate($im, 255, 255, 255);

$font = imagepsloadfont("bchbi.pfb"); // or locate your .pfb files on your machine