Показать сообщение отдельно

  #23  
Старый 16.07.2007, 00:02
NOmeR1
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,187
Провел на форуме:
6023777

Репутация: 2642


По умолчанию

Гем, твой скрипт не работает, вот мой вариант
PHP код:
<?

function win2uni($s)
{

    
$s convert_cyr_string($s,'w','i');

    for (
$result=''$i=0$i<strlen($s); $i++)
    {
        
$charcode ord($s[$i]);
        
$result .= ($charcode>175)?"&#".(1040+($charcode-176)).";":$s[$i];
    }

    return 
$result;

}

$ps file_get_contents('http://bash.org.ru/random');
preg_match_all("#<div id=\"quotes\">(.*?)<hr class=\"iq\">#is"$ps$outPREG_SET_ORDER); 
foreach(
$out as $row
{
    
$row[1] = preg_replace("#<div class=\"q\">(.*?)</div>(.*?)<div>(.*?)</div>(.*?)</div>#is","\\3",$row[1]);
    
$row[1] = preg_replace("#\n(.*?)#is","\\1",$row[1]);
    
$row[1] = str_replace('<br />',"\n",$row[1]);
    
$row[1] = str_replace('<br>',"\n",$row[1]);
    
$row[1] = str_replace("    ","",$row[1]);
    
$row[1] = '<ANTICHAT>'.$row[1].'<ANTICHAT close=1>';
    
$row[1] = preg_replace("#<ANTICHAT> (.*?) <ANTICHAT close=1>#is","\\1",$row[1]);
    
$row[1] = str_replace("&lt;","<",$row[1]);
    
$row[1] = str_replace("&gt;",">",$row[1]);
    
$row[1] = str_replace('&quot;','"',$row[1]);
}

$row[1] = wordwrap($row[1], 100"\n");
$count substr_count($row[1],"\n");

$strl strlen($row[1]);
$a=split("\n",$row[1]);
for(
$i=count($a), $max=0;$i>0;$i--)
  if(
strlen($a[$i-1])>$max)
    
$max=strlen($a[$i-1]);

$font_name 'REFSAN.ttf'//имя шрифта
$font_size 8//размер шрифта
$w $max * ($font_size 1); //ширина картинки
$h = (($count 1) * ($font_size 2)) - 1//высота картинки

$image imagecreatetruecolor($w,$h) or die('Cannot create image');

imagefill($image000x363940);

$text win2uni($row[1]);

$X 1;
$Y 11;

imagettftext($image$font_size0$X$Y0xB9B9B9$font_name$text);

header('Content-type: image/png');
imagepng($image);
imagedestroy($image);

?>

Последний раз редактировалось NOmeR1; 06.08.2007 в 00:17..
 
Ответить с цитированием