ostatnimi dniami tłukłem się strasznie z bibliotekami do konwertowania plików php/html do formatu PDF. Zaliczyłem kilka bibliotek z większym i mniejszym efektem, ale w większości największym mankamentem jest uzyskanie polskich znaków, lub mozolna praca przy tworzeniu formularzy stricte do wydruku.
W efekcie trafiłem na bibliotekę HTML2PDF, wszystko wydało się promieniste jak pojawiły mi się pierwsze polskie znaki na pdf-ie, więc kolejnym krokiem było wbudowanie wspomnianej biblioteki do mojego projektu i tu ogarnęło mnie zdziwienie. PDF owszem powstaje ma polskie fonty, jednak w pierwszej części dokumentu drukują mi się wszelkiego rodzaju zapytania SQL, i inne niepotrzebne informacje. Może ktoś z grana forumowiczów miał taki przypadek, lub wie jak sobie z tym poradzić?
Poniżej zamieszczam plik index.php - odpowiedzialny za wydruk
<?php require_once('html2fpdf.php'); $pdf = new HTML2FPDF('P','mm','A4'); $pdf->AddPage(); $pdf->UseCSS(true); $htmlbuffer = iconv("UTF-8", "ISO8859-2", $htmlbuffer); $pdf->WriteHTML($htmlbuffer); $pdf->Output("file.pdf", "D"); ?>
oraz plik który powinien być wydrukowany (oczywiście w fragmencie)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <head> <meta http-equiv="Content-type" content="text/html;charset=utf-8" /> <meta name="Description" content="[ #DESCRIPTION# ]"> </head> <body> <?php include 'config.php'; $ulica = $_POST['ulica']; $miasto = $_POST['miasto']; $kod = $_POST['kod']; $id_uzyt = $_POST['id_uzyt']; $imie_nazwisko1 = $_POST['imie_nazwisko']; $nr_legitymacji = $_POST['nr_legitymacji']; ............ echo' <form name="kartaewidencyjna" action="" method="post"> <input type="hidden" name="id_uzyt" value="'.$u['id_uzyt'].'"/></input> <font face="Times New Roman" color="#FEFEFE" size="2"> <fieldset style=width:900px;> <legend align=center>KARTA DO WYDRUKU</legend> <br> <table border="1" cellspacing="1" cellpadding="0"> <tr> <td style="width: 150px" align="left">Imię i Nazwisko: </td> <td colspan="3">"'.$u['login'].'"</td> <td style="width: 150px">Nr legitymacji:</td><td>"'.$r['nr_legitymacji'].'"</td> </tr> <tr> <td style="width: 150px" align="left">Adres zamieszkania:</td> <td style="width: 150px">ulica: <br>"'.$r['ulica'].'"</td> <td style="width: 150px">Kod pocztowy: <br>"'.$r['kod'].'"</td> <td style="width: 150px">Miasto: <br>"'.$r['miasto'].'"</td> <td colspan="3" style="width: 150px">Nr telefonu: <br>"'.$r['telefon'].'"</td> </tr> ......... </table>'; ?> </body>
Dziękuję za wszelkie porady prowadzące do rozwiązania problemu
MK