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 :: Версия для печати :: Русский текст в imagettftext
Форумы портала PHP.SU » » Графика в PHP » Русский текст в imagettftext

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

1. djserver - 20 Марта, 2013 - 09:24:21 - перейти к сообщению
Юзал поиск на форуме то что нужно не нашел. Дело обстоят так:
Функция imagettftext выводит русский текст в виде квадратиков.
Погуглил, нашел несколько вариантов функций для перекодирования в utf-8. вот только толку от них 0. да и чего его перекодировать если он и так utf-8. в общем функции перекодирования не помогают. Шрифт поддерживает кириллицу все ок, он у нас на сайте используется, тоесть со шрифтом все ок. в чем может быть проблема???
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. $img="img/vaucher/original.jpg";
  3. $pic = ImageCreateFromjpeg($img); //открываем рисунок в формате JPEG
  4. $color=ImageColorAllocate($pic, 81, 77, 76); //получаем идентификатор цвета
  5. ImageTTFtext($pic, 26, 0, 1045, 1120, $color, "fonts/Myriad-Web-Pro-Regular.ttf", $_POST['arr']['room']); //- если вместо $_POST написать просто "русский текст" (ну так для теста) то выводятся квадратики (((
  6.  
Огорчение
(Добавление)
под функцией перекодировки я имел в виду
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. function win_uni ($in) {  
  3.         $in = convert_cyr_string($in ,"w","i");  
  4.         $out = "";  
  5.         for ($i=0; $i < strlen($in); $i++) {  
  6.                 $char = ord($in[$i]);  
  7.                 $out .= ($char > 175)?"&#".(1040+($char-176)).";":$in[$i]; }
  8.         return $out;
  9. }  

обычный iconv(); тоже не помогает....
2. armancho7777777 - 20 Марта, 2013 - 10:39:13 - перейти к сообщению
Проверте всё-таки кодировку файла.
У меня нормально всё работает.
3. djserver - 20 Марта, 2013 - 10:49:43 - перейти к сообщению
Кодировка файла Utf-8
кодировка строки utf-8

А какая у вас система, на чем проверяли. Я уже грешу на CentOs.
Ну просто все перерыл. Для решения проблемы ничего кроме функций перекодировки не предлагают. Но что не пробую не помогает.
(Добавление)
Как оказалось шрифт не подходит. Поставил arial.ttf все заработало. Хотя не ясно как так получилось что этот шрифт используется на сайте и выводит кириллицу, ридером открываю там есть русские символы, а в функции не работает.
В общем проблема решена, дело было в шрифте.
Спасибо за помощь и участие.

 

Powered by ExBB FM 1.0 RC1