Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Наложение русского текста на создаваемую картинку
Форумы портала PHP.SU » » Графика в PHP » Наложение русского текста на создаваемую картинку

Страниц (1): [1]
 

1. sv2011 - 03 Августа, 2011 - 15:23:55 - перейти к сообщению
Есть форма, передает значение файлу sample.php в котором получаем из адресной строки занчение поля и пишем на картинку примерно так:
CODE (htmlphp):
скопировать код в буфер обмена
  1. $string = $_GET['name'];
  2. $im = imagecreatefrompng("555860png.png");
  3. imagestring($im, 4, $hpx, $vpx, $string, $color);

(часть кода пропущена)
Сам вопрос - как написать на картинку текст русскими буквами? С латинскими проблем нет, русские пишутся кракозябрами..
2. biperch - 03 Августа, 2011 - 15:31:24 - перейти к сообщению
нужно выбрать шрифты, google в помощь
3. sv2011 - 03 Августа, 2011 - 15:58:00 - перейти к сообщению
biperch пишет:
нужно выбрать шрифты, google в помощь

Я нашел функцию подгрузки шрифтов. Знач в эту сторону копать? Ок, попробую.
4. sv2011 - 05 Августа, 2011 - 08:22:52 - перейти к сообщению
Подскажите, а как узнать id шрифта для подстановки в функцию наложения текста?
5. illy - 19 Августа, 2011 - 20:21:06 - перейти к сообщению
Если до сих пор делаешь, то вот те готовый код:
PHP:
скопировать код в буфер обмена
  1. // НАСТРАИВАЕМ
  2. $string = $_GET['name']; // НАШ ТЕКСТ
  3. $size = 14; // РАЗМЕР ШРИФТА
  4. $font = "tahoma.ttf"; // ПУТЬ К ШРИФТАМ
  5. $color='0xc00000'; // ЦВЕТ ТЕКСТА
  6. $angle='0'; // НАКЛОН ТЕКСТА В ГРАДУСАХ
  7. $q=90; // КАЧЕСТВО JPEG ФОТО ПОСЛЕ НАЛОЖЕНИЯ ЗНАКА  (если это JPG)
  8. $im='555860png.png';
  9. // ПОГНАЛИ
  10. $z=getimagesize($im);
  11. if($z[2]=='1'){ $p=ImageCreateFromgif($im); }
  12. if($z[2]=='2'){ $p=ImageCreateFromjpeg($im); }
  13. if($z[2]=='3'){ $p=ImageCreateFrompng($im); }
  14. $d=imagecreatetruecolor($z[0],$z[1]);
  15. imagefill($d,0,0,0xffffff);
  16. imagecopyresampled($d,$p,0,0,0,0,$z[0],$z[1],$z[0],$z[1]);
  17. // 0,$z[1] КООРДИНАТЫ ТЕКСТА X,Y
  18. imagettftext($d,$size,$angle,0,$z[1],$color,$font,$string);
  19. // СОХРАНЯЕМ ФОТКУ
  20. if($z[2]=='1'){ imagegif($d,$im); }
  21. if($z[2]=='2'){ imagejpeg($d,$im, 90); }
  22. if($z[2]=='3'){ imagepng($d,$im); }
  23. // УБИРАЕМ ЗА СОБОЙ МУСОР

 

Powered by ExBB FM 1.0 RC1