на экран надо вывести картинку в которой написано "текст"
Как такое делается в пхп? Функции какие может есть?
сначала наверное надо создать картинки с каждой буквой алфавита по отдельности всякими шрифтами.
А как потом вывести не 5 картинок с бувами т,е,к,с,т а одну целую - "текст"?
Спустя 25 минут, 45 секунд (12.03.2012 - 09:42) Visman написал(а):
Фнукция imagestring() http://www.php.su/functions/?imagestring
И некоторые другие функции из графических http://www.php.su/functions/?cat=image
И некоторые другие функции из графических http://www.php.su/functions/?cat=image
Спустя 4 часа, 34 минуты, 58 секунд (12.03.2012 - 14:17) Guest написал(а):
спасибо!
посмотрел ссылки. погуглил еще всякое..
получилось вот что
то что надо, да вот только русский язык не распознает..
почитал в инете пишут, что у пхп встроенных шрифтов мало, потому нужно загружать свои скрипты при помощи
imageloadfont()
вот только примеров я не нашел..
как загрузить эти шрифты не пойму?
там в одно примере был файл с gd а шрифты там в ttf..
посмотрел ссылки. погуглил еще всякое..
получилось вот что
<?php
$str="текст";
header ("Content-type: image/png");
$im = @imagecreate (200, 40)
or die ("Cannot Initialize new GD image stream");
$background_color = imagecolorallocate ($im, 255, 255, 255);
$text_color = imagecolorallocate ($im, 233, 14, 91);
$x=10;
$y=10;
$font=5;
imagestring ($im, $font, $x, $y,$str, $text_color);
imagepng ($im);
?>
то что надо, да вот только русский язык не распознает..
почитал в инете пишут, что у пхп встроенных шрифтов мало, потому нужно загружать свои скрипты при помощи
imageloadfont()
вот только примеров я не нашел..
как загрузить эти шрифты не пойму?
там в одно примере был файл с gd а шрифты там в ttf..
Спустя 2 минуты, 13 секунд (12.03.2012 - 14:20) Visman написал(а):
Спустя 17 минут, 57 секунд (12.03.2012 - 14:38) ADiel написал(а):
header('Content-Type: image/png');
$im = imagecreatetruecolor(200, 40) or die ("Cannot Initialize new GD image stream");
$background_color = imagecolorallocate ($im, 255, 255, 255);
$text_color = imagecolorallocate ($im, 233, 14, 91);
$x=10;
$y=10;
$font=5;
$text = 'Проверка...';
$font = './arial.ttf';
imagettftext($im, 20, 0, 11, 21, $text_color, $font, $text);
imagepng($im);
imagedestroy($im);
Шрифт лежит в папке со скриптом
Спустя 28 минут, 30 секунд (12.03.2012 - 15:06) sergeiss написал(а):
Цитата (Guest @ 12.03.2012 - 15:17) |
то что надо, да вот только русский язык не распознает.. |
Функция imagettftext требует, чтобы текст был в кодировке UTF-8. Поэтому, если у тебя скрипт в другой кодировке, то нужно делать переконвертацию, с помощью iconv().
Спустя 1 день, 53 минуты, 47 секунд (13.03.2012 - 16:00) ТС написал(а):
спасибо, работает! а как теперь это вставить на страничку? :)
пишут что заголловок уже отправлен.. убираю
пишу вверху
а вместо картинки выходит куча символов...
что делать?
пишут что заголловок уже отправлен.. убираю
header ("Content-type: image/png");
пишу вверху
<HEAD>
<META http-equiv=content-type content="text/html,image/png; charset=utf-8">
</head>
а вместо картинки выходит куча символов...
что делать?
Спустя 17 минут, 29 секунд (13.03.2012 - 16:17) Ser18 написал(а):
Теперь в другом файле вставляйте этот файл как картинку через тег <img src="image.php" />
Спустя 31 минута, 35 секунд (13.03.2012 - 16:49) Guest написал(а):
спасибо.
но всеравно не получается..
как это вывести на экран? всеравно кучу символов показывает, вместо картинки
но всеравно не получается..
<img src="
<?PHP
//преобразование текста в картинку
function cr_im($text){
$textsize=mb_strlen($text)*11+20;
header ("Content-type: image/png");
$im = @imagecreate ($textsize, 40)
or die ("Cannot Initialize new GD image stream");
$background_color = imagecolorallocate ($im, 255, 155, 255);
$text_color = imagecolorallocate ($im, 0, 0, 0);
$x=10;
$y=30;
$size=16;
$ugol=0;
$font='ariblk.ttf';
imagettftext($im, $size, $ugol, $x, $y, $text_color, $font, $text);
imagepng ($im);
imagedestroy($im);
}
$text="тест";
cr_im($text);
?>
как это вывести на экран? всеравно кучу символов показывает, вместо картинки
Спустя 55 секунд (13.03.2012 - 16:50) Guest написал(а):
вариант с <img src="image.php" />
работал.
но вот только в тот файл надо инклюдить другой с переменными как я понимаю, а тогда возникает тоже..
работал.
но вот только в тот файл надо инклюдить другой с переменными как я понимаю, а тогда возникает тоже..
Спустя 10 минут, 29 секунд (13.03.2012 - 17:00) Ser18 написал(а):
Создаете файл (картинку) с заголовком
дальше пишите код который эту картинку рисует
Сохраняете его, например: image.php
Создаете второй файл например: index.php
И вставляете туда тег <img src="image.php" />
header ("Content-type: image/png");
дальше пишите код который эту картинку рисует
Сохраняете его, например: image.php
Создаете второй файл например: index.php
И вставляете туда тег <img src="image.php" />
Спустя 16 часов, 8 минут, 2 секунды (14.03.2012 - 09:08) ТС написал(а):
итак:
есть файл test.php
есть файл image.php
Появляется ошибка
[/php]
что делать? как я понимаю при инклюде видимо включаетcя text/html , а потому image/png не срабатывает..
есть файл test.php
<!DOCTYPE html>
<html>
<HEAD>
<META http-equiv=content-type content="text/html charset=utf-8">
</HEAD>
<body>
<?php
$str="некоторый текст";
?>
<img src="image.php" />
</body>
</html>
есть файл image.php
<?php
//файл из которого берется текст
include 'test.php';
//функция преобразование текста в картинку
function create_image($text){
header ("Content-type: image/png");
$textsize=mb_strlen($text)*11+20;
$im = @imagecreate ($textsize, 40)
or die ("Cannot Initialize new GD image stream");
$background_color = imagecolorallocate ($im, 255, 155, 255);
$text_color = imagecolorallocate ($im, 0, 0, 0);
$x=10;
$y=30;
$size=16;
$ugol=0;
$font = 'ariblk.ttf'; //нужно скачать шрифт и положить в папку со скриптом
imagettftext($im, $size, $ugol, $x, $y, $text_color, $font, $text);
imagepng ($im);
imagedestroy($im);
}
//преобразование текста
create_image($str);
?>
Появляется ошибка
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\localhost\www\test.php:7) in Z:\home\localhost\www\image.php
[/php]
что делать? как я понимаю при инклюде видимо включаетcя text/html , а потому image/png не срабатывает..
Спустя 11 минут, 39 секунд (14.03.2012 - 09:20) Ser18 написал(а):
<?php
header ("Content-type: image/png");
//файл из которого берется текст
include 'test.php';
//функция преобразование текста в картинку
function create_image($text){
$textsize=mb_strlen($text)*11+20;
$im = @imagecreate ($textsize, 40)
or die ("Cannot Initialize new GD image stream");
$background_color = imagecolorallocate ($im, 255, 155, 255);
$text_color = imagecolorallocate ($im, 0, 0, 0);
$x=10;
$y=30;
$size=16;
$ugol=0;
$font = 'ariblk.ttf'; //нужно скачать шрифт и положить в папку со скриптом
imagettftext($im, $size, $ugol, $x, $y, $text_color, $font, $text);
imagepng ($im);
imagedestroy($im);
}
//преобразование текста
create_image($str);
?>
Спустя 7 минут, 13 секунд (14.03.2012 - 09:27) Guest написал(а):
спасибо.. теперь другая ошибка:
появляется изображение с надписью типа "изображение не может быть показанно так как содержит ошибки"..
появляется изображение с надписью типа "изображение не может быть показанно так как содержит ошибки"..
Спустя 1 час, 33 минуты, 13 секунд (14.03.2012 - 11:00) Guest написал(а):
ураа заработало!
вот, может кому пригодится:
в файл генерации изображения:
а в основной файл:
вот, может кому пригодится:
в файл генерации изображения:
create_image($_GET["text"]);
а в основной файл:
<img src="image.php?text=<?=$text; ?>" />