Thursday, November 19, 2009

Membuat PDF dengan fpdf


Pada dasarnya pembuatan file pdf dengan php dapat dilakukan dengan fungsi header('Content-Type: application/pdf')  yang telah disediakan oleh php itu sendiri. Namun alangkah baiknya seorang web developer lebih mengedepankan efisiensi tenaga dan waktunya dengan mempergunakan kelas tambahan yang notabenenya kelas tersebut erat hubungannya dalam penyusunan file pdf, sehingga waktu untuk coding aplikasi berbasis web tersebut dapat dipercepat.
Kelas tambahan ini sebenarnya adalah suatu php script yang dapat anda unduh secara gratis, didalamnya berisi kelas-kelas yang dapat mempermudah anda untuk membuat laporan berformat pdf. Terima kasih banyak untuk mas Olivier Plathey  atas kontribusi fpdf-nya yang benar-benar bermanfaat sekali.

Intro fpdf…
Setelah anda download silahkan lakukan ekstrak dalam direktori yang anda suka, pastinya anda mengekstraknya di bawah direktori htdocs. Kalo nggak di dalam direktori htdocs scriptnya ya nggak jalan. :D. Di sini penulis melakukan ekstrak script inti fpdf.php ke dalam direktori /htdocs/fpdf/fpdf.php, sehingga jika penulis mengakses fpdf.php dari luar direktori /fpdf menggunakan require jadi seperti ini :

require "../fpdf/fpdf.php";

dengan dua titik di depannya.
Ya, silahkan dimainkan saja, yang penting intinya adalah anda dapat menggunakan kelas-kelas yang ada dalam fpdf.php tersebut dengan mudah.

Di bawah ini adalah contoh script sederhana menggunakan fpdf untuk membuat satu halaman A4 Landscape, dan didalamnya di tuliskan sebuah kalimat dengan font 12.


require "./fpdf/fpdf.php";
$laporan=new FPDF('L','mm','A4');
$laporan->AddPage();
$laporan->SetFont('times','B',12);
$laporan->Cell(280,10,'Pembuatan File PDF',1,1,'R');
$laporan->Output();
?>

Lihat dalam bentuk pdf

Di sini saya jelaskan sedikit, pada script fpdf.php terdapat sebuah kelas inti yaitu FPDF yang mewakili pembuatan header bertipe pdf.
Kalimat ini,
$laporan=new FPDF('L','mm','A4');
diartikan sebagai pembuatan objek baru dari kelas FPDF dengan kata lain membuat file pdf baru, dengan kriteria halamannya itu Landscape (L), satuannya millimeter (mm) dan page sizenya A4.

Selanjutnya baris
$laporan->AddPage();
Digunakan untuk membuat halaman pertama dari file pdf yang ada. Sehingga apabila ditambahkan satu baris lagi $laporan->AddPage(); halamannya otomatis menjadi 2. Dan begitu seterusnya.

Baris selanjutnya,
$laporan->SetFont('times','B',12);
Kalimat seperti ini digunakan untuk mengeset font file pdf tersebut, Set Fontnya menjadi times new roman, dengan ukuran 12, dan lakukan cetak tebal.

Kemudian baris selanjutnya,
$laporan->Cell(280,10,'Pembuatan File PDF',1,1,'R');
Untuk menuliskan sebuah kalimat cukup menggunakan Cell(), atau MultiCell(), dimana Cell() biasanya digunakan hanya dapat digunakan untuk membuat kalimat satu baris saja, sedangkan MultiCell() dapat menghandle banyak baris.
Nilai 280 pada parameter awal, di gunakan sebagai margin kiri kalimatnya.
Kemudian nilai 10 sebagai parameter kedua, digunakan untuk margin atasnya.
Selanjutnya untuk menuliskan kalimatnya diletakkan di parameter ke 3.
Dan nilai 1 di parameter ke empat adalah untuk memberikan border, pada kalimat tersebut, selanjutnya nilai 1 di parameter ke 5 gunakan untuk posisi, apakah akan mengikuti parameter selanjutnya apa tidak, parameter selanjutnya yakni “R” adalah untuk mengatur posisi dimana kalimat ini akan diratakan, apakah rata kiri, atau rata kanan.

Baris selanjutnya yaitu :
$laporan->Output();
Ini digunakan untuk menghasilkan file pdf nantinya.
Cukup mudah ya ? Wink Ya, fpdf-nya dapat didownload disini :
http://networkandgame.890m.com/ilmuwebsite/php/fpdf16.zip

No comments:

Post a Comment