дАЛЕЕ о Gd
а то какая то тарабарщина идет.. :)
Цитата:
Originally posted by lootelen
Как заставить его хавать русские тексты ?
а то какая то тарабарщина идет.. :)
Как заставить его хавать русские тексты ?
а то какая то тарабарщина идет.. :)
Пример кода пожалуйста.
Цитата:
Originally posted by HabaHaba
Пример кода пожалуйста.
Пример кода пожалуйста.
Код:
<?
header("Content-type:image/png");
$im = imagecreatefromjpeg("template.jpg");
$bgcolor = ImageColorAllocate($im, 255, 212, 35);
$textcolor = ImageColorAllocate($im, 0, 0, 0);
$infocolor = ImageColorAllocate($im, 0, 83, 62);
$font = ImageColorAllocate($im, 0, 0, 0);
$date=date(Y.":".M);
$word="Харьков";
imagestring($im,5,4,30,$word,$textcolor);
imagestring($im,2,69,32,$date,$textcolor);
imagestring($im,2,4,70,"info text",$infocolor);
Imagepng ($im);
ImageDestroy ($im);
?>
header("Content-type:image/png");
$im = imagecreatefromjpeg("template.jpg");
$bgcolor = ImageColorAllocate($im, 255, 212, 35);
$textcolor = ImageColorAllocate($im, 0, 0, 0);
$infocolor = ImageColorAllocate($im, 0, 83, 62);
$font = ImageColorAllocate($im, 0, 0, 0);
$date=date(Y.":".M);
$word="Харьков";
imagestring($im,5,4,30,$word,$textcolor);
imagestring($im,2,69,32,$date,$textcolor);
imagestring($im,2,4,70,"info text",$infocolor);
Imagepng ($im);
ImageDestroy ($im);
?>
вот слово Харьков как раз на тарабарщине и пишется..
заморачиваемся со шрифтами GD
Либо используем TTF:
Либо
Либо используем TTF:
Код:
<?
function text_convert($text){
$isoline = convert_cyr_string($text, "w", "i");
for ($i=0; $i < strlen($isoline); $i++){
$thischar=substr($isoline,$i,1);
$charcode=ord($thischar);
$uniline.=($charcode>175) ? "&#" . (1040+($charcode-176)). ";" : $thischar;
}
return $uniline;
}
header("Content-type:image/png");
$im = imagecreatefromjpeg("template.jpg");
$bgcolor = ImageColorAllocate($im, 255, 212, 35);
$textcolor = ImageColorAllocate($im, 0, 0, 0);
$infocolor = ImageColorAllocate($im, 0, 83, 62);
$font = ImageColorAllocate($im, 0, 0, 0);
$date=date(Y.":".M);
$word=text_convert("Харьков");
imageTTFtext( $im,8,0,5,30,$blue,"arial.ttf",$word);
//imagestring($im,5,4,30,text_convert($word),$textcolor);
imagestring($im,2,69,32,$date,$textcolor);
imagestring($im,2,4,70,"info text",$infocolor);
Imagepng ($im);
ImageDestroy ($im);
?>
function text_convert($text){
$isoline = convert_cyr_string($text, "w", "i");
for ($i=0; $i < strlen($isoline); $i++){
$thischar=substr($isoline,$i,1);
$charcode=ord($thischar);
$uniline.=($charcode>175) ? "&#" . (1040+($charcode-176)). ";" : $thischar;
}
return $uniline;
}
header("Content-type:image/png");
$im = imagecreatefromjpeg("template.jpg");
$bgcolor = ImageColorAllocate($im, 255, 212, 35);
$textcolor = ImageColorAllocate($im, 0, 0, 0);
$infocolor = ImageColorAllocate($im, 0, 83, 62);
$font = ImageColorAllocate($im, 0, 0, 0);
$date=date(Y.":".M);
$word=text_convert("Харьков");
imageTTFtext( $im,8,0,5,30,$blue,"arial.ttf",$word);
//imagestring($im,5,4,30,text_convert($word),$textcolor);
imagestring($im,2,69,32,$date,$textcolor);
imagestring($im,2,4,70,"info text",$infocolor);
Imagepng ($im);
ImageDestroy ($im);
?>
Фцнкция гонит поток кодов символов.. но при написании на картинке онне преобразуется в буквы.. так и стается код..
Цитата:
Originally posted by lootelen
Фцнкция гонит поток кодов символов.. но при написании на картинке онне преобразуется в буквы.. так и стается код..
Фцнкция гонит поток кодов символов.. но при написании на картинке онне преобразуется в буквы.. так и стается код..
GD по умолчанию не понимает русские шрифты.
Я уже выкладывайл русские шрифты для GD, они KOI8 и перед выводом текста нужно делать [phpdoc]convert_cyr_string[/phpdoc]
Шрифты тут:
http://forum.codenet.ru/showthread.php?threadid=14079
Цитата:
Originally posted by lootelen
Фцнкция гонит поток кодов символов.. но при написании на картинке онне преобразуется в буквы.. так и стается код..
Фцнкция гонит поток кодов символов.. но при написании на картинке онне преобразуется в буквы.. так и стается код..
А если убрать функцию преобразования в UTF но оставить TTF?