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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Косяк при выводе текста на изображение

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
PATCH
Отправлено: 25 Декабря, 2011 - 21:25:18
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 924
Дата рег-ции: Апр. 2011  


Помог: 22 раз(а)




PHP:
скопировать код в буфер обмена
  1. $capture = imagecreatetruecolor('150','30');
  2. $color = imagecolorallocate ($capture, 210, 210, 210);
  3. $white = imagecolorallocate ($capture, 255, 255, 255);
  4. imagefill($capture,0,0,$color);
  5. imageantialias($capture,true);
  6.  
  7. function Generate_Chars()
  8. {
  9.         $chars = array('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','А','Б','В','Г','Д','Е','Ё','Ж','З','И','Й','К','Л','М','Н','О','П','Р','С','Т','У','Ф','Х','Ц','Ч','Ш','Щ','Ъ','Ы','Ь','Э','Ю','Я','а','б','в','г','д','е','ё','ж','з','и','й','к','л','м','н','о','п','р','с','т','у','ф','х','ц','ч','ш','щ','ъ','ы','ь','э','ю','я');
  10.  
  11.         $rand_keys = array_rand($chars,1);
  12.         echo $chars[$rand_keys];
  13. }
  14.  
  15. $rand_long = mt_rand(2,7);
  16. $x=0;
  17. for ($i=0; $i < $rand_long; $i++)
  18. {
  19.         $dX=20;
  20.         $x=$x+$dX;
  21.         $y=25;
  22.     $size = mt_rand(7,14);
  23.         $angle=mt_rand(-50,50);
  24.         imagettftext ($capture, $size, $angle, $x, $y, $color,"fonts/bellb.ttf",Generate_Chars());
  25. }
  26.  
  27.  
  28.  
  29. header ("Content-type: image/jpeg");
  30. imagejpeg ($capture);


скрипт не допилин (допиливаю) , собственно косяк с функцией imagettftext почему то когда я ее использую изображение вообще не выводится на экран а если уберу ее выводится естествно фон (картинка без текста) вот не пойму хоть убей) ошибка не какая не выводится просто картинка вообще не выводится)) путь до шрифта указан верно)

(Отредактировано автором: 25 Декабря, 2011 - 21:26:28)

 
 Top
OrmaJever Модератор
Отправлено: 25 Декабря, 2011 - 21:48:43
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




функция Generate_Chars() выводит символы, а должна возвращать. Из-за этого портится код изображения + хедер скорее всего не отправляется


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
PATCH
Отправлено: 25 Декабря, 2011 - 21:54:21
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 924
Дата рег-ции: Апр. 2011  


Помог: 22 раз(а)




1) Header отправляется , уже писал что без imagettftext выводит серый фон (картинки 150х30) без текста естествено
2)
PHP:
скопировать код в буфер обмена
  1. imagettftext ($capture, $size, $angle, $x, $y, $color,"fonts/bellb.ttf","DSADA");

один фиг)
 
 Top
OrmaJever Модератор
Отправлено: 25 Декабря, 2011 - 21:58:19
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




предлогаю дебажить. Убрать строку

Тогда там должна быть ошибка.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
PATCH
Отправлено: 25 Декабря, 2011 - 22:04:46
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 924
Дата рег-ции: Апр. 2011  


Помог: 22 раз(а)




все нашел)) спасибо)) ошибка была в двух местах
1ую ты помог найти (в функции надо было возвращать значение а не выводить
2ая (бональная ошибка) цвет текста = цвету фона D) поэтому когда я исправил ошибку в функции мне выводился тупо фон)) D
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Графика в PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB