Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: русский текст на картинку
 
 автор: kosta_in_net   (21.02.2011 в 20:21)   письмо автору
 
 

Поместить текст на картинку (водяной знак, например) не проблма, если писать латиницей. Попробовал кирилицей - получил квадратики. Проблема решается? Вот код, работающий с латиницей:

$text='It is text';
$im=imageCreateFromGif("image.gif");
$textcolor=imageColorAllocate($im,0,0,255);
imageString($im,1,20,20,$text,$textcolor);
header("Content-type: image/Gif");
imageGif($im);
imageDestroy($im);

  Ответить  
 
 автор: Trianon   (21.02.2011 в 20:26)   письмо автору
 
   для: kosta_in_net   (21.02.2011 в 20:21)
 

imagettftext нужно использовать. С загруженными на сервер TTF-фонтамии
и текст в utf-8

  Ответить  
 
 автор: kosta_in_net   (21.02.2011 в 20:47)   письмо автору
 
   для: Trianon   (21.02.2011 в 20:26)
 

поскольку не имел с этим дело. рискну задать дополнительные вопросы. Получается конструкция вроде:

$text='это текст';
$font="1.ttf";
$im=imageCreateFromGif("image.gif"); 
$textcolor=imageColorAllocate($im,0,0,255);
$angle=0;
$x=20;
$y=20;

imagettftext($im,$size ,$angle, $x, $y, $textcolor, $font, $text);

header("Content-type: image/Gif"); 
imageGif($im); 
imageDestroy($im);


как определить $size и превратить ткст в utf-8? С графикой работать практически не приходилось, да и конвертировать тексты из кодировки в кодировку. Можно, конечно, самостоятельно в доках порыться, но если укажете функции, которые искать, буду признателен.
$size - Это просто размер шрифта в пикселях или пунктах?

  Ответить  
 
 автор: kvins   (22.02.2011 в 00:55)   письмо автору
 
   для: kosta_in_net   (21.02.2011 в 20:47)
 

она же в док тайп прописана
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

  Ответить  
 
 автор: sim5   (22.02.2011 в 02:52)   письмо автору
 
   для: kvins   (22.02.2011 в 00:55)
 

Это не доктайп, это метатег. Но данный метатег никакого отношения к изображениям, да и к конвертированию кодировок, отношения не имеет.

  Ответить  
 
 автор: ONYX   (22.02.2011 в 03:03)   письмо автору
 
   для: kosta_in_net   (21.02.2011 в 20:47)
 

Размер шрифта зависит от библиотеки GD, если GD1 то в пикселах, если GD2 то в пунктах, сверьтесь со своей версией через phpinfo();

Конвертация, копать здесь

  Ответить  
 
 автор: kosta_in_net   (24.02.2011 в 23:34)   письмо автору
 
   для: ONYX   (22.02.2011 в 03:03)
 

ок. Разобрался
$text='это текст'; 
$text=iconv("WINDOWS-1251", "UTF-8", $text);
$font="1.ttf"; // шрифт
$im=imageCreateFromGif("image.gif");  // исходный рисунок
$textcolor=imageColorAllocate($im,0,0,255); // цвет надписи
$angle=0; // угол
$x=20; // позиция по оси х
$y=20; // позиция по оси y
$size=20;// размер символов

imagettftext($im,$size ,$angle, $x, $y, $textcolor, $font, $text); 

header("Content-type: image/Gif");  
imageGif($im);  
imageDestroy($im);

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования