Konular

EBooklar

http://www.tcpdf.org adresine gidip download bölümünden PDF yapan TCPDF classını indiriyoruz.

PHP ile PDF Dosyalar Oluşturmak

examples  klasöründe örnek dosyaları incelerseniz eğer nasıl kullanacağınız hakkında bilgi edinebilirsiniz.

Aşağıdaki ilk örneklerden birisi:

 

require_once('../config/lang/eng.php');
require_once('../tcpdf.php');

// create new PDF document
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Nicola Asuni');
$pdf->SetTitle('TCPDF Example 001');
$pdf->SetSubject('TCPDF Tutorial');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');

// set default header data
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 001', PDF_HEADER_STRING);

// set header and footer fonts
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));

// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

//set margins
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);

//set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);

//set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);

//set some language-dependent strings
$pdf->setLanguageArray($l);

// ---------------------------------------------------------

// set default font subsetting mode
$pdf->setFontSubsetting(true);

// Set font
// dejavusans is a UTF-8 Unicode font, if you only need to
// print standard ASCII chars, you can use core fonts like
// helvetica or times to reduce file size.
$pdf->SetFont('dejavusans', '', 14, '', true);

// Add a page
// This method has several options, check the source code documentation for more information.
$pdf->AddPage();

// Set some content to print
$html = <<

Welcome to  TCPDF !


This is the first example of TCPDF library.

This text is printed using the writeHTMLCell() method but you can also use: Multicell(), writeHTML(), Write(), Cell() and Text().


Please check the source code documentation and other examples for further information.


TO IMPROVE AND EXPAND TCPDF I NEED YOUR SUPPORT, PLEASE MAKE A DONATION!


EOD
;

// Print text using writeHTMLCell()
$pdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $html, $border=0, $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

// ---------------------------------------------------------

// Close and output PDF document
// This method has several options, check the source code documentation for more information.
$pdf->Output('example_001.pdf', 'I');

//============================================================+
// END OF FILE
//============================================================+
 

 

 Her sayfada yer alan başlık ve her sayfa altındaki alt bilgiyi silmek için:

require_once('../config/lang/eng.php');
require_once('../tcpdf.php');

// create new PDF document
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Nicola Asuni');
$pdf->SetTitle('TCPDF Example 001');
$pdf->SetSubject('TCPDF Tutorial');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');

// set default header data
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 001', PDF_HEADER_STRING);

// remove default header/footer
$pdf->setPrintHeader(false);
$pdf->setPrintFooter(false);

// set header and footer fonts
//$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
//$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));

// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

//set margins
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);

//set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);

//set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);

//set some language-dependent strings
$pdf->setLanguageArray($l);

// ---------------------------------------------------------

// set default font subsetting mode
$pdf->setFontSubsetting(true);

// Set font
// dejavusans is a UTF-8 Unicode font, if you only need to
// print standard ASCII chars, you can use core fonts like
// helvetica or times to reduce file size.
$pdf->SetFont('dejavusans', '', 14, '', true);

// Add a page
// This method has several options, check the source code documentation for more information.
$pdf->AddPage();

// Set some content to print
$html = <<

Welcome to  TCPDF !


This is the first example of TCPDF library.

This text is printed using the writeHTMLCell() method but you can also use: Multicell(), writeHTML(), Write(), Cell() and Text().


Please check the source code documentation and other examples for further information.


TO IMPROVE AND EXPAND TCPDF I NEED YOUR SUPPORT, PLEASE MAKE A DONATION!


EOD
;

// Print text using writeHTMLCell()
$pdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $html, $border=0, $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

// ---------------------------------------------------------

// Close and output PDF document
// This method has several options, check the source code documentation for more information.
$pdf->Output('example_001.pdf', 'I');

//============================================================+
// END OF FILE
//============================================================+
 

 

Türkçe karakter problemi yaşayabilirsiniz bunu engellemek içinse iconv fonksiyonu ile çevirim yapmalısınız ve kullandığınız fontunda elbette türkçe karakter desteklemesi lazım. Bunun için TCPDF içerisindeki fonts klasöründe dejavusans.php adlı bir türkçe karaktter destekleyen font var.

 

// Set some content to print
    $html = iconv("windows-1254", "UTF-8", $HtmlMetnim);

 

Benim yaptığım çalışma:

 

<?php

//010711
//Yonetim Sayfa Guvenligi
include_once("__yonet_oturum.php");
$UyeGuvenlik = new __KlasOturum('YONETIM', $FN);


if (!empty($_GET['kayit_no'])) {

    $get = array(
        'kayit_no' => $_GET['kayit_no']
    );
    $Filitre = array(
        'kayit_no'
    );
    $FN->Filitre($get, $Filitre);

    $_GET['kno'] = $get['kayit_no'];
    include("test_kagit_.php");

    require_once('../tcpdf/config/lang/eng.php');
    require_once('../tcpdf/tcpdf.php');

// create new PDF document
    $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

// set document information
    $pdf->SetCreator(PDF_CREATOR);
    $pdf->SetAuthor($_SERVER['HTTP_HOST']);
    $pdf->SetTitle($Snc->sonuc_grup_ad);
    $pdf->SetSubject($Snc->testbaslik);
    $pdf->SetKeywords('TCPDF, PDF, example, test, guide');

// set default header data
    //$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE . ' 001', PDF_HEADER_STRING);
    $pdf->SetHeaderData("", "", $Snc->sonuc_grup_ad, iconv("windows-1254", "UTF-8", $_SERVER['HTTP_HOST'] . ' üzerinde ' . $FN->Tarih($Snc->tar, 3) . ' tarihinde yapılan sınav içerği'));


    // remove default header/footer
    $pdf->setPrintHeader(false);
    //$pdf->setPrintFooter(false);

// set header and footer fonts
//        $pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
    $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));

// set default monospaced font
    $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

//set margins
    $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
    $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
    $pdf->SetFooterMargin(PDF_MARGIN_FOOTER);

//set auto page breaks
    $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);

//set image scale factor
    $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);

//set some language-dependent strings
    $pdf->setLanguageArray($l);

// ---------------------------------------------------------
// set default font subsetting mode
    $pdf->setFontSubsetting(true);

// Set font
// dejavusans is a UTF-8 Unicode font, if you only need to
// print standard ASCII chars, you can use core fonts like
// helvetica or times to reduce file size.
    $pdf->SetFont('dejavusans', '', 6, '', true);

// Add a page
// This method has several options, check the source code documentation for more information.
    $pdf->AddPage();

// Set some content to print
    $html = iconv("windows-1254", "UTF-8", $TestKagit->TempYaz());

// Print text using writeHTMLCell()
    $pdf->writeHTMLCell($w = 0, $h = 0, $x = '', $y = '', $html, $border = 0, $ln = 1, $fill = 0, $reseth = true, $align = '', $autopadding = true);

// ---------------------------------------------------------
// Close and output PDF document
// This method has several options, check the source code documentation for more information.
    $DosyaAdi = $FN->DosyaAdiYap($FN->NoktadanSonra(stripslashes($Snc->adsoy), 11) . ' ' . $FN->NoktadanSonra(stripslashes($Snc->sinif), 11) . ' ' . stripslashes($Snc->numara) . ' ' . $Snc->sonuc_grup_ad);

    $pdf->Output($DosyaAdi, 'I');

//============================================================+
// END OF FILE
//============================================================+
}
 

 Kaynaklar :

Yorumunuzu Ekleyin


Yorumlar

  1. nirvana82
    Özeelikle türkçe karakter problemine dair çözüm için çok teşekkürler.
    07 Ekim 2012 18:08:21, Pazar Like



  • Kurallı İfadeler (regex Engine)
  • Kurallı İfadeler (regex Engine) ~ 31,347

    Bir regex'in gerçekte nasıl çalıştığını bilmek daha efektif çalışan regex ifadeleri oluşturmamızı ve regex'leri daha isabetli oluşturmamızı sağlar. Bu yazımızda oluşturduğunuz regex ifadelerinin neden beklediğiniz sonuçları vermediğini ve umduğunuz eşleşm...



  • PHP ile PDF dosya oluşturmak
  • PHP ile PDF dosya oluşturmak ~ 24,911

    Php ile yeni bir pdf dosyası oluşturmak : Öncelikle php ile pdf işlemleri yapmak için bir pdf kütüphanesine ihtiyacınız olacak


  • PHP nedir?
  • PHP nedir? ~ 23,382

    HTML kodlarının arasına yerleştirilmiş php kodlarından ayrıştırıp işleyerek sonuçta saf HTML formatında bir çıktı üretmek ve Web sunucusuna iletmektir.


  • $_FILES
  • $_FILES ~ 22,194

    Örnek kod ve açıklamalar



  • Oop - Nesne Yönelimli Programlama
  • Oop - Nesne Yönelimli Programlama ~ 19,318

    Artık ister istemez her programcının bulaştığı bu teknik hakkında sayısız makale yazılmıştır bu güne kadar. Bu makale de onlardan biri


  • Xampp Kurulumu ~ 18,438

    Xampp apache, mysql, php ve phpmyadmin için kolay ve basit kurulum sağlayan bir uygulamadır.




  • Php İle Excel Dosyası Oluşturmak
  • Php İle Excel Dosyası Oluşturmak ~ 17,657

    Genelde, herhangi bir biçimlendirme söz konusu olmadığında, veritabanındaki bir bilgiyi ya da başka bir tabloyu excel ortamına aktarmak için csv yöntemini kullanırım. Bu yöntem herkesin bildiği gibi, her sütunu tab ya da noktalı virgül gibi bir karakterle...


  • Verileri doğrulamak için PHP ile filtreleme işlemleri
  • Verileri doğrulamak için PHP ile filtreleme işlemleri ~ 17,391

    Ziyaretçilerden gelen verilerin istediğimiz formata uygunluğunu kontrol etmeliyiz ki, güvenlik açığı yaratmayalım. E-postaları, web adreslerini, bilgi girişlerini ve dahasını Her birine uygun farklı fonksiyonlar yazıldı bu vakte kadar. Ancak PHP 5.2.0 ve ...


  • En iyi 25 php template motoru
  • En iyi 25 php template motoru ~ 16,810

    Php tabanlı web siteleri dizayn ederken, php kodlarını html kodlar arasına gömeriz. Fakat gün gelir bu kodları düzenlemek istediğimizde çok büyük bir çaba gerektirir. Bu tarz durumlarla başa çıkabilmek için ve daha kararlı bir sistem kodlamak için t...


  • Php ile Oturum Yönetimi (SESSION)
  • Php ile Oturum Yönetimi (SESSION) ~ 16,556

    Türkçesi oturum anlamına gelen session bilgilerin saklanması için kullanılan mantıksal bir nesnedir.Session oturum yönetimini kullanarak şifreli sayfalar oluşturarak ve bu sayfaları belirlediğiniz kullanıcıların görmesini sağlayabilirsiniz.


  • Php Mysql to XML
  • Php Mysql to XML ~ 16,551

    Bu yapıyı geliştirerek mysql veritabanınızdaki datalarınızı xml standartlarına dönüştürebilirsiniz.



  • Dizi Tanımlamaları
  • Dizi Tanımlamaları ~ 16,468

    PHP’de array tanımlayıcısını kullanarak içerisinde elemanları yerleştirmek yoluyla ya da index numarasını köşeli parantezler içerisinde belirterek atama yaparak dizi oluşturmak mümkündür



  • $_SERVER
  • $_SERVER ~ 16,175

    $_SERVER host bilgileri, header bilgileri, yollar ve script yolları gibi bilgileri içeren bir dizidir. Bu dizideki değerler web server tarafından üretilir. Tüm server yazılımlarının, tüm değerleri atayacağına dair bir kesinlik yoktur. Yazılım bazıl...