TCPDF ile PDF oluşturma
TCPDF, PDF belgeleri oluşturmak için ücretsiz ve açık kaynak yazılım PHP sınıfıdır. TCPDF’ in en son sürümünü buradan yükleyebilir veya örnek PHP kodlarına buradan ulaşabilirsiniz. TCPDF dosyasının içinde examples klasöründe hazır kullanabileceğiniz örnek kodlar mevcuttur. TCPDF’ in desteklediği sınıf üyelerine ulaşmak için burayı tıklayın.
KURULUMU:
Yüklediğiniz TCPDF dosyalarını açın ve istediğiniz bir klasörün içine kopyalayın.
Daha sonra bir php sayfası oluşturun ve aşağıdaki PHP kodunu bu sayfanın içine kopyalayın.
<?PHP require_once('config/lang/eng.php'); require_once('tcpdf.php'); $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); $pdf->SetFont('dejavusans', '', 14, '', true); $pdf->AddPage(); $html="Bu bir örnek PDF sayfasıdır."; // istediginiz html kodunu buraya girebilirsiniz. Bu bir table, div veya veritabanından gelen veriler olabilir. $pdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $html, $border=0, $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true); $pdf->Output('ornek_1.pdf', 'I'); // oluşturulan belge ismi - ornek_1.pdf /* I - PDF belgesini tarayıcıya satır içi gönder (tarayıcıda göster) D - PDF belgesini yüklemek için uyar F - PDF belgesini yerel sunucuya yükle */ ?>
Yukarıdaki kodu çalıştırdığınızda basit bir pdf belgesi oluşturmuş oluruz. Eğer examples klasöründeki örnek dosyaları incelerseniz, TCPDF ile ne kadar kolay PDF belgesi oluşturulabildiğini göreceksiniz.
FONTLAR
Bazen farklı fontlara ihtiyaç duyarız. TCPDF ile farklı bir font kullanmak mümkündür.
Sadece yapmamız gereken addTTFfont objesi ile fontumuzu oluşturmak,
$fontismi= $pdf->addTTFfont('/font_klasor/DejaVuSans.ttf', 'TrueTypeUnicode', '', 32);
ve SetFont ile oluşturulan fontumuzu çağırmaktır.
$pdf->SetFont('DejaVuSans', 'BI', 20, '', 'false');
Bir MYSQL veritabanından cağrılan veriler ile PDF oluşturma
$db_host = "localhost"; //Host address (most likely localhost) $db_name = "veritabnı_ismi"; //veritabani ismi $db_user = "root"; //veritabani kullanici ismi $db_pass = "788888"; //sifre $mysqli = new mysqli($db_host, $db_user, $db_pass, $db_name); $mysqli->query("SET NAMES utf8"); require_once('config/lang/eng.php'); require_once('tcpdf.php'); $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); $pdf->SetFont('dejavusans', '', 14, '', true); $pdf->AddPage(); // $q = 'SELECT * FROM `iller` ORDER BY sehir ASC'; $res = $mysqli->query($q); $html=''; while($nt=$res->fetch_array()){ $html .= $nt['sehir'].'<br>'; } // $pdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $html, $border=0, $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true); $pdf->Output('ornek_1.pdf', 'I'); // oluşturulan belge ismi - ornek_1.pdf /* I - PDF belgesini tarayıcıya satır içi gönder (tarayıcıda göster) D - PDF belgesini yüklemek için uyar F - PDF belgesini yerel bilgisayara yükle */
Herhangi bir dosyayı PDF belgesine ekleme
Aşagıdaki kod oku.txt dosyasını PDF belgesi içinde gösterir.
<?PHP require_once('config/lang/eng.php'); require_once('tcpdf.php'); $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); $pdf->SetFont('dejavusans', '', 14, '', true); $pdf->AddPage(); // $html = file_get_contents('oku.txt', true); // $pdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $html, $border=0, $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true); $pdf->Output('ornek_1.pdf', 'I'); // oluşturulan belge ismi - ornek_1.pdf ?>