wlasnie udalo mi sie cos wyskrobac... problem z tym, ze w ten kod dzieli tekst na akapity i kazdy musi byc krotszy niz 4095 pikseli (przy okreslonej czcionce)... poza tym nie bierze pod uwage, ze wiersze sa zawijane, jesli dany wyraz nie miesci sie w jednym wierszu...
[php:1:14f4376a19]<?php
$p = PDF_new();
PDF_open_file($p, "");
PDF_set_info($p, "Creator", "potang");
PDF_set_info($p, "Author", $added_by);
PDF_set_info($p, "Title", ucfirst($nazwa_przedmiotu_arch[$przedmiot]));
PDF_set_info($p, "Subject", $subject);
PDF_begin_page($p, 595, 842);
$font = PDF_load_font($p, "Times New Roman", "iso8859-2", "");
PDF_setfont($p, $font, 15);
PDF_set_text_pos($p, 45, 790);
PDF_show($p, ucfirst($nazwa_przedmiotu_arch[$przedmiot]));
PDF_setfont($p, $font, 13);
PDF_set_text_pos($p, 45, 770);
PDF_show($p, $subject);
$akapit = explode("r", $text);
$szerokosc = "505";
$wysokosc = "690";
$ile_stron = "1";
//umiesc wszystkie akapity na stronach
for ($i=0; $i<count($akapit); $i++)
{
$ile_wierszy = ceil($wysokosc/11);
//sprawdz czy dany akapit zmiesci sie na jednej stronie (jesli nie!?!?)
if (PDF_stringwidth($p, $akapit[$i], $font, 11)/$szerokosc <= $ile_wierszy)
{
//umiesc akapit w boxie
PDF_show_boxed($p, $akapit[$i], 45, 65, $szerokosc, $wysokosc, "left", "");
//zmniejsz wysokosc boxu w zaleznosci czy tekst zajmuje wiecej niz jeden
//wiersz
if (PDF_stringwidth($p, $akapit[$i], $font, 11) < $szerokosc)
{$wysokosc=$wysokosc-15;}
else
{$wysokosc = $wysokosc -
ceil((PDF_stringwidth($p, $akapit[$i], $font, 11)/$szerokosc))*15;}
//jesli w zmniejszonym boxie nie zmiesci sie nastepny akapit to zakoncz
//aktualna strone i rozpocznij nastepna
if ($wysokosc <=
ceil((PDF_stringwidth($p, $akapit[$i++], $font, 11)/$szerokosc)*15))
{
PDF_rect($p, 45, 60, $szerokosc, 0);
PDF_stroke($p);
$font = PDF_load_font($p, "Times New Roman", "iso8859-2", "");
PDF_setfont($p, $font, 10);
PDF_show_boxed($p, "Tekst został dodany przez ".$added_by.", dnia ".$time, 45, 49, 350, 10, "left", "");
PDF_show_boxed($p, "Strona $ile_stron z

?", 450, 49, 100, 10, "right", "");
PDF_end_page($p);
PDF_begin_page($p, 595, 842);
$font = PDF_load_font($p, "Times New Roman", "iso8859-2", "");
PDF_setfont($p, $font, 15);
PDF_set_text_pos($p, 45, 790);
PDF_show($p, ucfirst($nazwa_przedmiotu_arch[$przedmiot]));
PDF_setfont($p, $font, 13);
PDF_set_text_pos($p, 45, 770);
PDF_show($p, $subject);
$wysokosc = "690";
$ile_stron++;
}
$i--;
}
}
//zakoncz ostatnia strone, zamknij plik i wyslij go do uzytkownika
PDF_rect($p, 45, 60, $szerokosc, 0);
PDF_stroke($p);
$font = PDF_load_font($p, "Times New Roman", "iso8859-2", "");
PDF_setfont($p, $font, 10);
PDF_show_boxed($p, "Tekst został dodany przez ".$added_by.", dnia ".$time, 45, 49, 350, 10, "left", "");
PDF_show_boxed($p, "Strona $ile_stron z $ile_stron", 450, 49, 100, 10, "right", "");
PDF_end_page($p);
PDF_close($p);
?>[/php:1:14f4376a19]