Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

imageTTFTextSmart: Возвращает изображение с текстовой надписью и сглаживанием границ текста (Rin)
Author Message
Rin
Участник форума



Joined: 01 Jun 2005
Posts: 515
Карма: 184
   поощрить/наказать

Location: Москва

PostPosted: Tue Jan 29, 2008 10:36 pm (написано за 7 минут 20 секунд)
   Post subject: imageTTFTextSmart: Возвращает изображение с текстовой надписью и сглаживанием границ текста
Reply with quote

Возвращает полноцветное изображение с текстовой надписью и сглаживанием границ текста (антиалиасинг).
Если в цвете текста или фона используется необязательное значение альфа-канала,
то возвращается изображение с альфа-каналом.
При сохранении в файл в формате, который поддерживает альфа-канал (например, PNG)
текст будет хорошо смотреться на фоне любого цвета.
Не используйте альфа-канал при сохранении в форматы, которые не поддерживают прозрачность!

Каждая составляющая цвета (RGB) имеет диапазон от 0 (нет цвета) до 255 (самый насыщенный).
Альфа-канал (A) имеет диапазон от 0 (полная непрозрачность) до 127 (полная прозрачность)
Для мелких шрифтов сглаживание границ работает не очень хорошо, к тому же кёрнинг (интервал между буквами) не равномерный.
Улучшить сглаживание и кёрнинг можно, увеличив размер шрифта в 2 раза и установив коэффициент масштабирования в 0.5.
Т.о. можно добиться довольно хорошего качества, подобного качеству программ типа Adobe Photoshop.

Пример использования (кодировка д.б. UTF-8!):
Code (php): скопировать код в буфер обмена
error_reporting (www.php.net/error_reporting)(E_ALL /*& ~E_NOTICE & ~E_USER_NOTICE*/);
ini_set (www.php.net/ini_set)('display_errors', '1');
ini_set (www.php.net/ini_set)('html_errors', 1);
ob_start (www.php.net/ob_start)();

include_once 'imageTTFTextSmart.php';
$img = ImageTTFTextSmart(26, 0.5, 0, 'impact.ttf', 'Новости компании', $color = array (www.php.net/array)(75, 75, 75, 0), $bgcolor = array (www.php.net/array)(255, 255, 255, 127), array (www.php.net/array)('left' => 1, 'top' => 6, 'right' => 1, 'bottom' => 6));

ImagePNG($img, null, 9, PNG_FILTER_NONE);
$data = ob_get_clean (www.php.net/ob_get_clean)();
header (www.php.net/header)('Content-Type: image/png');
header (www.php.net/header)('Content-Length: ' . strlen (www.php.net/strlen)($data));
echo (www.php.net/echo) $data;
Пример использования: меню первого уровня сайта avtorif.ru/


text2image-Impact-k0.5-FreeType-2.3.5.png
 Description:
Пример изображения с текстом и альфаканалом, шрифт Impact, размер 26, масштабирование 0.5, FreeType-2.3.5
 Filesize:  1.96 KB
 Viewed:  17148 Time(s)

text2image-Impact-k0.5-FreeType-2.3.5.png



text2image-Impact-k0.5-FreeType-2.1.9.png
 Description:
Пример изображения с текстом и альфаканалом, шрифт Impact, размер 26, масштабирование 0.5, FreeType-2.1.9
 Filesize:  1.25 KB
 Viewed:  17147 Time(s)

text2image-Impact-k0.5-FreeType-2.1.9.png



imageTTFTextSmart-3.1.0.rar
 Description:
продвинутая версия imageTTFText()

Download
 Filename:  imageTTFTextSmart-3.1.0.rar
 Filesize:  15.21 KB
 Downloaded:  854 Time(s)



Last edited by Rin on Tue Apr 15, 2008 3:18 pm; edited 9 times in total
Back to top
View user's profile Send private message Send e-mail
topy
Заглянувший



Joined: 11 Apr 2007
Posts: 17
Карма: 2
   поощрить/наказать

Location: 127.0.0.1

PostPosted: Wed Jan 30, 2008 11:20 am (спустя 12 часов 44 минуты; написано за 1 минуту 30 секунд)
   Post subject:
Reply with quote

Очень полезная штука.
Rin, а можно пример использования imageTTFTextSmart?
У меня пишет ошибку parse, но видимо это я не правильно использую функцию.
Спасибо!
Back to top
View user's profile Send private message
Rin
Участник форума



Joined: 01 Jun 2005
Posts: 515
Карма: 184
   поощрить/наказать

Location: Москва

PostPosted: Wed Jan 30, 2008 4:16 pm (спустя 4 часа 55 минут; написано за 23 секунды)
   Post subject:
Reply with quote

Добавил пример использования выше.
Back to top
View user's profile Send private message Send e-mail
topy
Заглянувший



Joined: 11 Apr 2007
Posts: 17
Карма: 2
   поощрить/наказать

Location: 127.0.0.1

PostPosted: Thu Jan 31, 2008 11:58 am (спустя 19 часов 42 минуты; написано за 1 минуту 16 секунд)
   Post subject:
Reply with quote

на PHP 4.4.4 все равно выдает ошибку
Quote:
Parse error: parse error, unexpected T_ARRAY, expecting '&' or T_VARIABLE or T_CONST in [path_to_script]\imageTTFTextSmart.php on line 33
Back to top
View user's profile Send private message
Rin
Участник форума



Joined: 01 Jun 2005
Posts: 515
Карма: 184
   поощрить/наказать

Location: Москва

PostPosted: Fri Feb 01, 2008 11:21 pm (спустя 1 день 11 часов 22 минуты; написано за 28 секунд)
   Post subject:
Reply with quote

Давно пора переходить на PHP5 :)
Back to top
View user's profile Send private message Send e-mail
topy
Заглянувший



Joined: 11 Apr 2007
Posts: 17
Карма: 2
   поощрить/наказать

Location: 127.0.0.1

PostPosted: Mon Feb 04, 2008 12:52 pm (спустя 2 дня 13 часов 31 минуту; написано за 43 секунды)
   Post subject:
Reply with quote

Даа, знаю, не везде, просто, перешел....
Вот появился повод перейти еще на одном компе.
Спасибо...
Back to top
View user's profile Send private message
Rin
Участник форума



Joined: 01 Jun 2005
Posts: 515
Карма: 184
   поощрить/наказать

Location: Москва

PostPosted: Thu Feb 07, 2008 10:37 am (спустя 2 дня 21 час 44 минуты; написано за 1 минуту 56 секунд)
   Post subject:
Reply with quote

3.1.0
  1. Всегда возвращает полноцветное изображение, т.к. при палитровом сглаживание менее качественно.
    Если необходимо перевести изображение в палитровое, используйте imageTrueColorToPalette()
Back to top
View user's profile Send private message Send e-mail
Rin
Участник форума



Joined: 01 Jun 2005
Posts: 515
Карма: 184
   поощрить/наказать

Location: Москва

PostPosted: Thu Feb 14, 2008 3:35 pm (спустя 7 дней 4 часа 58 минут; написано за 2 минуты 8 секунд)
   Post subject:
Reply with quote

Обновил примеры картинок. Видна разница для FreeType-2.3.5 и FreeType-2.1.9.
Субъективно мне старая версия FreeType больше нравится, чем новая.


text2image-Impact-k1.0-FreeType-2.3.5.png
 Description:
Пример изображения с текстом и альфаканалом, шрифт Impact, размер 26, масштабирование 1.0, FreeType-2.3.5
 Filesize:  1.89 KB
 Viewed:  17146 Time(s)

text2image-Impact-k1.0-FreeType-2.3.5.png



text2image-Impact-k1.0-FreeType-2.1.9.png
 Description:
Пример изображения с текстом и альфаканалом, шрифт Impact, размер 26, масштабирование 1.0, FreeType-2.1.9
 Filesize:  1.7 KB
 Viewed:  17146 Time(s)

text2image-Impact-k1.0-FreeType-2.1.9.png


Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML