Membuat Dokumen PDF dg PHP

http://blog.rosihanari.net

Introduction
Anda ingin membuat dokumen PDF dengan menggunakan PHP? Mau? OK… berikut ini akan saya sajikan tutorial dasar untuk membuat dokumen tersebut. Akan tetapi untuk seri pertama ini hanya akan dipaparkan cara membuat contoh dokumen sederhana saja. Untuk bentuk tabel, format koran, link dll akan disajikan kali lain. Untuk membuat dokumen PDF (Portable Document Format), langkah pertama yang dilakukan adalah menginstal library yang khusus untuk membuat dokumen PDF tsb. Secara default, PHP belum mempunyai library tersebut. Jenis library PDF yang terkenal adalah PDFlib yang bisa Anda unduh dengan gratis di http://www.pdflib.com/. Namun sayang, library itu bersifat shareware. Meskipun Anda dapat menggunakannya secara gratis, akan tetapi akan muncul suatu teks besar melintang di halaman PDF yang dibuat. Teks tersebut akan hilang apabila Anda membeli library Tapi jangan takut, meskipun demikian Anda masih bisa membuat dokumen PDF dengan gratis tanpa menggunakan PDFLib. Alternatif lain adalah menggunakan FPDF. FPDF merupakan singkatan dari FREE PDF yaitu merupakan class dari PHP yang juga dapat digunakan untuk membuat PDF tanpa menggunakan library. Sesuai namanya, FREE PDF (FPDF), tentu saja Anda dapat menggunakannya secara gratis. Paket FPDF dapat Anda unduh di http://www.fpdf.org/. Berikut ini beberapa kelebihan dari FPDF: Terdapat pilihan untuk ukuran unit, format halaman dan margin Memiliki kemampuan dalam memanajemen header dan footer, dan tabel Memiliki fasilitas untuk pemisah halaman otomatis Memiliki fasilitas untuk pemisah baris otomatis dan perataan teks Mendukung JPEG dan PNG Mendukung warna dan link Mendukung kompresi halaman Mendukung True Type Font dan encoding

Membuat Dokumen PDF dengan FPDF
Setelah FPDF selesai Anda unduh, berikutnya akan dijelaskan bagaimana membuat dokumen PDF nya. Dalam bundle FPDF tersebut terdapat suatu file fpdf.php. Di dalam file tersebut terdapat class PHP untuk keperluan membuat PDF. Oleh karena itu, setiap kali Anda akan membuat dokumen PDF, file tersebut harus diincludekan ke dalam script PHP Anda. Oya… file fpdf.php dapat ditaruh di mana saja dalam folder htdocs atau www.

Source code dapat didownload di http://source.rosihanari.net

1

Membuat Dokumen PDF dg PHP

http://blog.rosihanari.net

Kita akan membuat sebuah contoh sederhana dokumen PDF. Berikut ini adalah scriptnya. contoh.php
<?php require('fpdf.php'); // file fpdf.php harus diincludekan $pdf=new FPDF(); $pdf->AddPage(); $pdf->SetFont('Arial','B',12); $pdf->write(12,'Hello World! Hello World! Hello World! Hello World!'); $pdf->Output(); ?>

Penjelasan: Konstruktor FPDF() digunakan untuk menyiapkan dokumen PDF. Secara default, dokumen yang dihasilkan berformat A4, Portrait dan satuannya dalam milimeter. Setelah format halaman ditentukan, selanjutnya membuat halaman baru dengan perintah AddPage(); Sebelum teks dicetak, terlebih dahulu harus diset jenis fontnya dengan perintah SetFont(). Pada contoh di atas, font diset Arial, Bold, size 16 pts. Perintah Write() digunakan mencetak suatu teks ke dalam halaman. Nilai 12 pada Write() digunakan untuk mengatur lebar antar baris teks. Perintah Output() digunakan untuk menampilkan dokumen PDF yang telah dibuat ke dalam browser.

Output dari script di atas adalah sbb:

Source code dapat didownload di http://source.rosihanari.net

2

halaman.net Nantikan seri berikutnya untuk membuat dokumen PDF dengan PHP ini.Membuat Dokumen PDF dg PHP http://blog. Source code dapat didownload di http://source.net 3 . paragraf.rosihanari. halaman dan paragraf. Pokok bahasan ini akan diungkap secara detail tentang formatting yang terkait dengan teks.rosihanari. Pokok bahasan selanjutnya: memformat teks.

format kertas) Penjelasan: • • • Parameter orientasi kertas terdapat pilihan : 'L' (landscape) atau 'P' (portrait) Parameter satuan kertas terdapat pilihan : 'mm' (milimeter).Membuat Dokumen PDF dg PHP http://blog. satuan kertas. 'Letter' dan 'Legal' Contoh: Berikut ini perintah untuk membuat format halaman A4. $pdf=new FPDF('L'. Satuan dari besarnya margin tergantung dari satuan yang ditentukan dalam konstruktor FPDF(). 'in' (inch) Parameter format kertas terdapat pilihan : 'A3'. Sebagai contoh. Secara umum. 4 cm (margin atas) dan 3 cm (margin kanan). Memformat Halaman Dokumen Untuk memformat halaman dokumen digunakanlah konstruktor FPDF(). landscape dan satuan unitnya cm. sintaks untuk FPDF() adalah sbb: FPDF(orientasi kertas. batas margin halaman dokumen adalah 1 cm (untuk semua sisi). Perintah SetMargins() ini dituliskan setelah FPDF(). berikut ini adalah perintah untuk memformat margin: 4 cm (margin kiri).rosihanari.net Formatting Page. Anda dapat menggunakan SetMargin(). Memformat Margin Untuk memformat margin halaman. Source code dapat didownload di http://source. 'cm' (centimeter).net 4 . Pada tips berikut ini akan dijelaskan bagaimana memformat halaman dokumen dan memformat margin.rosihanari. 'A5'. 'pt' (point). margin kanan]) Secara default.'A4').'cm'. Teks Pada tips sebelumnya sudah dijelaskan bagaimana membuat contoh sederhana sebuah dokumen PDF menggunakan PHP. Berikut ini adalah sintaksnya: SetMargins(margin kiri. 'A4' (kuarto). margin atas [.

'cm'.12). Catatan: ingat konversi dari cm ke mm ya… ☺ Sedangkan berikut ini contoh script utuh yang menggunakan pengaturan margin. $pdf->SetMargins(40. Perintah di atas akan ekuivalen dengan $pdf=new FPDF('P'.''. // file fpdf.net 5 . $pdf->SetMargins(40.net $pdf=new FPDF('L'. $pdf->Output().Membuat Dokumen PDF dg PHP http://blog.php harus diincludekan $pdf=new FPDF('P'.'A4').'mm'.rosihanari. $pdf->SetMargins(4.30).3).rosihanari.'A4').4. <?php require('fpdf. $pdf->SetFont('Times'.'Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! ').40.30).40.'A4').'mm'. $pdf->AddPage().php'). ?> Adapun tampilan dari script di atas adalah Source code dapat didownload di http://source. $pdf->write(10.

Sintaks dari perintah ini adalah: Text(x.12). 'Hello World!'). $pdf->SetFont('Arial'. seperti bold (‘B’). Text() Perintah Text() digunakan untuk menuliskan teks pada koordinat tertentu dalam dokumen.'B'. Sedangkan apabila diinginkan teks tidak berformat. Source code dapat didownload di http://source. italic (‘I’). atau underlined (‘U’) diletakkan pada parameter format.'A4').php'). misalnya ‘arial’ atau ‘times’ untuk Times New Roman dll.12).Membuat Dokumen PDF dg PHP http://blog. bold dan berukuran 12 pts.rosihanari. $pdf->Text(50.net Menulis Teks Hal penting yang harus Anda tuliskan sebelum menuliskan teks ke halaman dokumen. dan y adalah posisi vertikal terhadap origin. // file fpdf. Contoh: Berikut ini perintah SetPoint() untuk meng-set jenis fontnya arial. perintah SetFont() harus dituliskan terlebih dahulu SetFont() digunakan untuk mengatur jenis font dari teks yang akan dituliskan. <?php require('fpdf. teks) Dengan x dan posisi mendatar terhadap origin. $pdf->AddPage(). size) Jenis font yang diinginkan dapat ditulis pada parameter type.''. $pdf->SetFont('Times'. Sintaks nya adalah SetFont(type.php harus diincludekan $pdf=new FPDF('P'. Sedangkan size menunjukkan ukuran font dalam satuan points.'mm'. 20.rosihanari. Format teks. Contoh: Berikut ini adalah script untuk menulis teks pada posisi koordinat 50 mm horizontal dan 20 mm vertikal.net 6 . Adapun titik pusat dokumen (origin) adalah pada titik di pojok kiri atas dokumen. Berikut ini beberapa perintah untuk menuliskan teks. Suatu teks dapat dalam dokumen PDF dapat dituliskan dengan beberapa cara. format. cukup ditulis string kosong atau ‘’. y.

rosihanari. Anda dapat pula menuliskan teks dengan menggunakan perintah Cell(). Parameter w menyatakan panjang cell (satuan tergantung dari satuan dalam FPDF). h.net $pdf->Output(). Source code dapat didownload di http://source. border. align. h menyatakan lebar cell (satuan tergantung dari satuan dalam FPDF). sebuah teks diletakkan pada sebuah cell berukuran tertentu. Berikut ini tampilan outputnya: Cell() Selain Text(). border merupakan option bernilai 0 atau 1 yang menyatakan ada tidaknya border cell (0: tak ada border. fill. 1: ada border). maka panjang cell adalah mulai dari kiri sampai kanan halaman (tergantung jenis kertas) Parameter text adalah string yang akan ditulis dalam cell tersebut.rosihanari. ln. Adapun sintaksnya adalah sbb: Cell(w. text. Apabila parameter w diberikan nilai 0.Membuat Dokumen PDF dg PHP http://blog. link) Dengan menggunakan cell. ?> Catatan: Satuan panjang koordinat tergantung jenis satuan yang diset pada FPDF().net 7 .

'A4'). Contoh penggunaan SetFillColor dapat dilihat pada contoh selanjutnya. Beberapa alternatif value dari option ini adalah ‘L’ (left). berikut ini adalah perintah Cell() untuk memberikan link pada teks ke Google.php'). teks berikutnya akan // diletakkan di kanan teks ini. Setting link ini dilakukan dengan menambahkan parameter link pada perintah Cell(). Option ini bernilai 0: posisi teks berikutnya di sebelah kanannya.1. posisi teks center dalam cell $pdf->Cell(20. Sebagai contoh.rosihanari.''. maka warna latarnya adalah hitam. Teks dalam cell dapat pula diberikan sebuah link. Parameter ini dapat diisi dengan value 0 jika tidak ada warna latar.'Teks 5'. teks berikutnya akan // diletakkan di bawah teks ini.'R').'Teks 3'. teks berada di kanan // dalam cell $pdf->Cell(40.50.'http://www.10. teks berada di tengah cell $pdf->Cell(20. Parameter fill digunakan untuk menentukan apakah cell diberikan warna latar atau tidak. // file fpdf. dan 2: posisi teks berikutnya tepat di bawah. Untuk mengubah menjadi warna yang lain dapat digunakan SetFillColor(warna) dengan format warna yang digunakan adalah RGB. size 12 $pdf->SetFont('Times'.10.'C'). standard. // setting jenis font Times New Roman.12).net Parameter ln merupakan option untuk memposisikan teks berikutnya yang akan dituliskan setelah perintah Cell() dipanggil.0. 1: posisi teks berikutnya di awal baris selanjutnya.'Teks 2'. ‘R’ (right) dan ‘C’ (center).com $pdf->Cell(40. $pdf->AddPage(). dengan border.1.'C').php harus diincludekan $pdf=new FPDF('P'.0.net 8 . teks berikutnya akan // diletakkan pada posisi awal baris berikutnya. tanpa border.10. // setting warna hijau pada cell yang akan dibuat Source code dapat didownload di http://source.'mm'. <?php require('fpdf. Secara default apabila bernilai 1.Membuat Dokumen PDF dg PHP http://blog. // cell berukuran 20x50 mm. // cell berukuran 20x10 mm. // cell berukuran 40x10 mm.2.rosihanari. dengan border.google.1. atau 1 apabila ada.com'). Selanjutnya akan diberikan sebuah script contoh yang akan menampilkan beberapa jenis output teks dari penggunaan Cell() yang berbeda. Parameter align menyatakan posisi teks relatif terhadap cell.'Teks 1'.

teks berikutnya akan // diletakkan posisi awal pada baris selanjutnya. 1). 'http://www.'Teks 4'.'Teks 5'. diberi latar dengan warna hijau $pdf->Cell(40.1.net $pdf->SetFillColor(0. // cell berukuran 40x10 mm.net 9 . 255). $pdf->Output().'C'. diberi link ke Google.10. diberi latar dengan warna biru. teks berikutnya akan // diletakkan tepat di bawah teks ini. teks berada di tengah // cell.10.rosihanari. $pdf->Cell(40.rosihanari.com'). tanpa border.Membuat Dokumen PDF dg PHP http://blog. teks berada di kiri // dalam cell. dengan border. 0). // cell berukuran 40x10 mm. // setting warna biru pada cell yang akan dibuat $pdf->SetFillColor(0.0. ?> Output dari script di atas adalah sbb: Source code dapat didownload di http://source.1. 1.google.'L'. 0.2. 255.

diberi border. // setting warna latar cell dengan hijau Source code dapat didownload di http://source.10. Sedangkan untuk parameter h.''.'A4').12). '. 'R'). 'Ini adalah teks kedua. Berikut ini adalah beberapa contoh penggunaan MultiCell() <?php require('fpdf.Membuat Dokumen PDF dg PHP http://blog. ‘L’ (rata kiri). Ini adalah teks kedua. justified (default) $pdf->MultiCell(0. dapat pula diberikan value ‘J’ (justified).net MultiCell() MultiCell() berfungsi seperti halnya Cell(). Ini adalah teks kedua. Ini adalah teks kedua. // membuat baris kosong $pdf->MultiCell(0. '. ‘C’ (rata tengah). // file fpdf. Sintaks secara umum adalah sbb: MultiCell(w.php harus diincludekan $pdf=new FPDF('P'. $pdf->SetFont('Times'. jarak antar baris 5 mm. txt. jarak // antar baris 10 mm.1). Ini adalah teks kedua. sedangkan MultiCell() dapat digunakan untuk menulis teks panjang. fill) Penjelasan parameter dari MultiCell() sama dengan Cell(). Ini adalah teks kedua. 5.rosihanari.'').php').rosihanari. // membuat multicell berukuran panjang 50 mm. // membuat multicell dari kiri sampai kanan halaman. Ini adalah teks pertama. $pdf->AddPage(). Ini adalah teks pertama. 'Ini adalah teks pertama.'').'mm'. namun perbedaannya Cell() hanya akan efektif untuk teks yang tidak terlalu panjang. border. rata kanan $pdf->MultiCell(50. Ini adalah teks kedua. h. namun untuk parameter align selain dapat diberikan value ‘R’ (rata kanan). 1. // membuat baris kosong $pdf->MultiCell(0. // diberi border. Ini adalah teks kedua. Ini adalah teks kedua. dapat diibaratkan merupakan jarak antar baris teks (khusus untuk baris teks lebih dari satu buah). Ini adalah teks pertama. Ini adalah teks pertama. 10.10. align. Ini adalah teks kedua. Ini adalah teks pertama.net 10 . Ini adalah teks pertama. Ini adalah teks kedua. Default dari align adalah Justified. Ini adalah teks kedua.

Anda dapat mengubahnya menjadi warna lain dengan menggunakan perintah SetTextColor(). Ini adalah teks Ini adalah teks ketiga. warna teks adalah hitam.net $pdf->SetFillColor(0. 5.1. Adapun output dari script di atas adalah sbb: MengubahWarna Text Secara default. ketiga. ketiga.rosihanari. ketiga. 'Ini adalah teks Ini adalah teks ketiga. Ini Ini Ini Ini Ini adalah adalah adalah adalah adalah teks teks teks teks teks ketiga.255. ketiga.1). ketiga. diberi warna latar hijau $pdf->MultiCell(0. Warna yang diinginkan ditulis dalam RGB. $pdf->Output().'L'.net 11 . diberi border. ?> ketiga. ketiga. ketiga. rata kiri. jarak antar baris // 5 mm.rosihanari.Membuat Dokumen PDF dg PHP http://blog. Contoh: Source code dapat didownload di http://source.0). // membuat multicell dari kiri sampai kanan halaman. Ini adalah teks Ini adalah teks ketiga. Ini adalah teks '. ketiga. Ini adalah teks Ini adalah teks ketiga.

''. 5. 'Ini adalah teks kedua. Ini adalah teks pertama. 'Ini adalah teks pertama.php harus diincludekan $pdf=new FPDF('P'. Ini adalah teks kedua.'mm'. 'J'). Ini adalah teks pertama. Ini adalah teks kedua. // file fpdf. 5. Ini adalah teks kedua. ?> Outputnya adalah: Source code dapat didownload di http://source. 0. Ini adalah teks pertama. Ini adalah teks pertama. Ini adalah teks kedua. $pdf->AddPage(). Ini adalah teks kedua. Ini adalah teks pertama. $pdf->MultiCell(0. // setting warna merah pada teks $pdf->SetTextColor(255. '. Ini adalah teks pertama. $pdf->SetFont('Times'.rosihanari. Ini adalah teks kedua. Ini adalah teks kedua. 1. 5. Ini adalah teks kedua. Ini adalah teks pertama. Ini adalah teks kedua. 255). 0. Ini adalah teks kedua. Ini adalah teks kedua. 'J'). '. 1. $pdf->MultiCell(0.'A4'). Ini adalah teks pertama.net <?php require('fpdf. Ini adalah teks kedua. 0).php'). // setting warna biru pada teks $pdf->SetTextColor(0.12).rosihanari.Membuat Dokumen PDF dg PHP http://blog. Ini adalah teks pertama. Ini adalah teks pertama. ''). $pdf->MultiCell(0. Ini adalah teks kedua.net 12 . $pdf->Output(). Ini adalah teks pertama. Ini adalah teks pertama.

rosihanari.rosihanari.Membuat Dokumen PDF dg PHP http://blog. Source code dapat didownload di http://source.net 13 .net Catatan: Namun sayang. pengubahan warna teks tidak dapat dilakukan secara inline (hanya teks tertentu pada suatu paragraf atau multiline).

0. Untuk menambahkan header dan footer.net'. // file fpdf.10).'rosihanari.10). // membuat jarak terhadap cell sebelumnya $this->Cell(132).10. Header dapat ditambahkan dengan membuat function berikut ini dalam subclass PDF sebagai perluasan FPDF.rosihanari.18 mm) Source code dapat didownload di http://source.php harus diincludekan class PDF extends FPDF { function Header() { // setting properti font $this->SetFont('Arial'.Membuat Dokumen PDF dg PHP http://blog.rosihanari.10. 18 mm) sampai koordinat (198 // mm.'B'.net 14 .0.0. class PDF extends FPDF { function Header() { // code untuk menulis header } } Function Header() secara otomatis akan dipanggil setelah konstruktor PDF dibuat dengan menggunakan new PDF().'L'). // menulis header $this->Cell(30.0. $this->Cell(30.'L').php'). Contoh: <?php require('fpdf. // setting properti font $this->SetFont('Arial'.'Ini adalah contoh sebuah header'. // membuat garis dari koordinat (11 mm.'I'.net Membuat Header dan Footer Anda dapat mempercantik halaman dokumen PDF dengan menambahkan header dan footer. Anda harus membuat subclass pada FPDF().

Ini adalah teks isi. Ini adalah teks isi.18. Ini adalah teks isi. $pdf->Output(). Ini adalah teks isi. '). class PDF extends FPDF { function Footer() Source code dapat didownload di http://source. Ini adalah teks isi.rosihanari. ?> Outputnya adalah sbb: Sedangkan untuk membuat footer. caranya juga sama dengan header yaitu membuat function Footer() dalam subclass FPDF. Ini adalah teks isi. $pdf->MultiCell(0.net 15 . Ini adalah teks isi.net $this->Line(11.198. 5. Ini adalah teks isi. Ini adalah teks isi. Ini adalah teks isi. } } $pdf=new PDF('P'. Ini adalah teks isi. $pdf->SetFont('Times'. Ini adalah teks isi.12).Membuat Dokumen PDF dg PHP http://blog. Ini adalah teks isi. Ini adalah teks isi.''. 'Ini adalah teks isi. Ini adalah teks isi.'A4'). Ini adalah teks isi.'mm'.rosihanari. // membuat space kosong antara header dengan teks konten $this->Ln(20).18). $pdf->AddPage(). Ini adalah teks isi.

0. $this->Cell(30. // file fpdf. 18 mm) sampai koordinat (198 // mm.10.0.0.0.rosihanari. maka isi subclassnya berbentuk: class PDF extends FPDF { function Header() { // code untuk menulis header } function Footer() { // code untuk menulis footer } } Contoh: <?php require('fpdf.net'.php').10).rosihanari.'B'.10).'L').18 mm) $this->Line(11. // menulis header $this->Cell(30.php harus diincludekan class PDF extends FPDF { // membuat header function Header() { // setting properti font $this->SetFont('Arial'.'I'.'rosihanari.198.net 16 .net { // code untuk menulis footer } } Apabila Anda ingin dokumen PDF memiliki header dan footer sekaligus. // membuat garis dari koordinat (11 mm. // membuat jarak terhadap cell sebelumnya $this->Cell(132). // membuat space kosong antara header dengan teks konten $this->Ln(20).18.18).'L'). } Source code dapat didownload di http://source.10.Membuat Dokumen PDF dg PHP http://blog. // setting properti font $this->SetFont('Arial'.'Ini adalah contoh sebuah header'.

for($i=1. $pdf->AliasNbPages().'Halaman ke. //Page number $this->Cell(0. ?> Tampilan dari script di atas adalah sbb: Source code dapat didownload di http://source. Ini adalah teks isi.rosihanari. Ini adalah teks isi. Ini adalah teks isi.0. Ini adalah teks isi. $pdf->SetFont('Times'. } } $pdf=new PDF('P'. Ini adalah teks isi. Ini adalah teks isi.'R').0. Ini adalah teks isi.$this->PageNo(). 'Ini adalah teks isi.''.'A4').8). Ini adalah teks isi.'').12). Ini adalah teks isi.Membuat Dokumen PDF dg PHP http://blog. Ini adalah teks isi.net 17 .$i<=15. '). Ini adalah teks isi.5 cm from bottom $this->SetY(-15). Ini adalah teks isi.net // membuat footer function Footer() { //Position at 1. $pdf->MultiCell(0.10.rosihanari. Ini adalah teks isi.'I'. Ini adalah teks isi. $pdf->AddPage(). } $pdf->Output().5. Ini adalah teks isi.$i++) { $pdf->MultiCell(0.'. 5.' dari {nb}'.'mm'. Ini adalah teks isi. Ini adalah teks isi. //Arial italic 8 $this->SetFont('Arial'.

rosihanari.rosihanari.net Source code dapat didownload di http://source.Membuat Dokumen PDF dg PHP http://blog.net 18 .

$this->y0=$this->GetY(). $this->Cell($w. $this->SetFillColor(230.15). <?php require('fpdf.9. $w=$this->GetStringWidth($title)+6. jangan khawatir karena tutorial berikut ini akan menjelaskannya. Berikut ini adalah script untuk menampilkan konten berbentuk kolom yang sudah dimodifikasi dari aslinya. Untuk membuat tampilan konten berformat kolom.1.net 19 . } function SetCol($col) { global $lebarkolom.230. $this->SetLineWidth(1).rosihanari. $this->col=$col.Membuat Dokumen PDF dg PHP http://blog.1.1).'B'.rosihanari. Source code dapat didownload di http://source.$title. $jarakantarkolom = 10. var $y=0.net Membuat Teks Format Kolom Format kolom seringkali Anda jumpai dalam artikel ataupun surat kabar. $jmlkolom = 2. $this->SetTextColor(220. Apabila Anda ingin membuat dokumen PDF berformat seperti itu dengan menggunakan PHP. Anda akan disibukkan dengan programming karena tidak ada function khusus untuk membuat kolom secara otomatis.80.50). class PDF extends FPDF { var $col=0.0). // menampilkan judul sebagai header function Header() { global $title.180). global $jarakantarkolom. $this->SetDrawColor(0. // setting format kolom (satuan dalam mm) $lebarkolom = 90. Kolom yang terbentuk dari script ini sejumlah 2 buah dengan lebar setiap kolom adalah 90 mm dan jarak antar kolomnya 10 mm.'C'.50.php'). $x=10+$col*($lebarkolom + $jarakantarkolom). $this->SetFont('Arial'.

$pdf->SetFont('Times'. Ini merupakan paragraf isi dengan format kolom.Membuat Dokumen PDF dg PHP http://blog.12). Ini merupakan paragraf isi dengan format kolom.$i<=20.$i++) { $pdf->MultiCell($lebarkolom. return true. Ini merupakan paragraf isi dengan format kolom.'Ini merupakan paragraf isi dengan format kolom. Ini merupakan paragraf isi dengan format kolom. if($this->col<$jmlkolom-1) { $this->SetCol($this->col+1). Ini merupakan paragraf isi dengan format kolom. } $pdf->Output(). ?> Hasil tampilan dari script di atas adalah Source code dapat didownload di http://source. Ini merupakan paragraf isi dengan format kolom. $pdf->AddPage().rosihanari. $this->SetY($this->y0). return false. // menampilkan teks isi dengan jarak antar baris dalam paragraf 5 mm for ($i=1. } function AcceptPageBreak() { global $jmlkolom. } else { $this->SetCol(0). $this->SetX($x). $pdf->SetTitle($title).rosihanari. // memberi jarak antar paragraf $pdf->Ln().net 20 .5.net $this->SetLeftMargin($x). '). } } } $pdf=new PDF().''. $title='Ini adalah bagian judul'.

net 21 .Membuat Dokumen PDF dg PHP http://blog.rosihanari.rosihanari.net Source code dapat didownload di http://source.

Membuat Dokumen PDF dg PHP http://blog. y) adalah titik pada pojok kiri atas image. Namun format image yang dapat disisipkan hanyalah JPEG dan PNG saja. Titik koordinat (x. Perintah yang digunakan untuk menyisipkan image adalah Image(). $pdf->Output(). $pdf->AddPage(). x.20.rosihanari. Link diletakkan pada parameter link.php'). link) Penjelasan: • Parameter path file digunakan untuk menentukan letak file image asli yang akan disisipkan • Parameter x dan y merupakan titik koordinat yang menentukan posisi image dalam dokumen.rosihanari. format. Satuan dari x dan y tergantung satuan yang dipilih pada konstruktor FPDF(). dan sintaksnya adalah sebagai berikut: Image(path file. w. Contoh: <?php require('fpdf. $pdf=new FPDF(). Secara default. ?> Outputnya adalah: Source code dapat didownload di http://source.png'. • Parameter w dan h bersifat optional digunakan untuk mengatur panjang dan lebar image dalam dokumen PDF • Parameter format digunakan untuk menentukan format image. y. format image ditentukan oleh extension file imagenya. ‘JPEG’ atau ‘PNG’. sebuah image dapat disisipkan ke dalam dokumen PDF. 30 mm vertikal $pdf->Image('image/logo. • Anda juga dapat menambahkan link pada image tsb. apakah ‘JPG’. h.net Menyisipkan Image Dengan FPDF. // menyisipkan image pada posisi 20 mm mendatar.30).net 22 .

$pdf=new FPDF().40.net 23 . $pdf->Image('image/logo.''.30. $pdf->Output().org').rosihanari. ?> Hasil tampilannya adalah: Source code dapat didownload di http://source.'http://www.fpdf.Membuat Dokumen PDF dg PHP http://blog.30.net Contoh: Berikut ini contoh image yang ada linknya <?php require('fpdf.png'.php'). $pdf->AddPage().20.rosihanari.

net 24 .net Source code dapat didownload di http://source.rosihanari.rosihanari.Membuat Dokumen PDF dg PHP http://blog.

net Membuat Tabel Tabel erat kaitannya dengan representasi data. 2. 'Solo'). 'Dwi Amalia F'. Berikut ini query untuk membuat tabel dan datanya. NAMAMHS. 3. terlebih dahulu kita siapkan database dan tabelnya. dst.rosihanari. Nama DB : data CREATE TABLE `mhs` ( `NIM` varchar(5) NOT NULL. maka akan ada sedikit programming untuk keperluan tsb. 'Solo'). ('M0192'. ALAMAT). ('M0193'. `NAMAMHS` varchar(20) NOT NULL.rosihanari. 'Faza Fauzan'. Dalam pembahasan ini. Kolom NO digunakan untuk menampilkan nomor urut 1.net 25 . kita akan membuat tabel yang akan menampilkan 4 data/record di atas dan terdiri dari 4 buah kolom (NO. Untuk membuat tabel dalam dokumen PDF menggunakan PHP. Sebagai contoh.Membuat Dokumen PDF dg PHP http://blog. 'Rosihan Ari Y'. 'Kudus'). NIM. 'Solo'). `ALAMAT` varchar(10) NOT NULL. Pada contoh ini. ('M0194'. Anda akan sedikit melakukan programming. Pada contoh pertama akan dibuat tabel biasa berbentuk sbb: Source code dapat didownload di http://source. Karena nomor tersebut tidak ada dalam field tabel. insert into mhs values ('M0191'. PRIMARY KEY (`NIM`) ). 'Nada Hasanah'. data yang disajikan dalam tabel berasal dari database MySQL. Hal ini dilakukan supaya data lebih enak dibaca dan mempercantik tampilan.

while ($fetchdata = mysql_fetch_row($hasil)) { $i++. } return $data.rosihanari.rosihanari.php')."root". } // function untuk menampilkan tabel Source code dapat didownload di http://source. $i = 0. untuk ditampilkan $data[] = $fetchdata. Berikut ini adalah scriptnya. .. // membuat counter 1.net Untuk membuat tabel seperti di atas. sebenarnya kita hanya main-main dengan perintah Cell(). $hasil = mysql_query($query).net 26 . mysql_connect("localhost". 2. <?php require('fpdf. $query = "SELECT * FROM mhs"."root")..Membuat Dokumen PDF dg PHP http://blog. karena pada prinsipnya sebuah tabel tersusun dari banyak sel. mysql_select_db("data"). 3. class PDF extends FPDF { // membaca data dari database function LoadData() { $data=array().

'L'. // parameter L menunjukkan teks rata kiri pada setiap // sel kepala tabel $this->Cell($w[$i].45).12).''.Membuat Dokumen PDF dg PHP http://blog.'ALAMAT').'B'.7.$header[$i].''. $pdf->AddPage().1).rosihanari. ?> Pada contoh kedua. $pdf->Output(). 0). } $this->Ln().0.'NIM'.6. // memanggil function untuk menampilkan tabel $pdf->TabelBiasa($header.$i<=sizeof($w)-1.12). // memanggil function untuk baca data $data=$pdf->LoadData().rosihanari.$row[$i].1. // menampilkan data // setting jenis font pada data tabel $this->SetFont('Arial'.$i++) $this->Cell($w[$i]. foreach($data as $row) { for($i=0.50. } // penutup tabel $this->Cell(array_sum($w).$i<count($header). // membuat kepala tabel for($i=0.net 27 .'T'). // nama-nama kolom untuk kepala tabel $header=array('No'. } } $pdf=new PDF(). // setting huruf bold pada kepala tabel $this->SetFont('Arial'.net function TabelBiasa($header.$data) { // setting lebar masing-masing kolom dalam mm $w=array(10. Perhatikan tampilan tabel berikut ini: Source code dapat didownload di http://source.$data). akan dibuat tampilan tabel yang sedikit lebih cantik dari sebelumnya yaitu ada pergantian warna setiap barisnya.0. 0.1).'NAMA MAHASISWA'.20.$i++) { // memberi warna latar merah pada kepala tabel $this->SetFillColor(255.

2."root". while ($fetchdata = mysql_fetch_row($hasil)) { $i++. $data[] = $fetchdata. $i = 0. mysql_connect("localhost". untuk ditampilkan array_unshift($fetchdata. .net Berikut ini adalah scriptnya: <?php require('fpdf. $hasil = mysql_query($query).net 28 . class PDF extends FPDF { // membaca data dari database function LoadData() { $data=array().rosihanari..rosihanari.php')."root"). 3.Membuat Dokumen PDF dg PHP http://blog.$i).. } // function untuk menampilkan tabel Source code dapat didownload di http://source. // membuat counter 1. mysql_select_db("data"). $query = "SELECT * FROM mhs". } return $data.

255).$i++) $this->Cell($w[$i].'B'. // setting huruf bold pada kepala tabel $this->SetFont('Arial'.0.'NAMA MAHASISWA'. $j = 0.1. // parameter L menunjukkan teks rata kiri pada setiap } $this->Ln(). foreach($data as $row) { // menampilkan perubahan warna latar putih dan biru muda // setiap ganti baris if ($j % 2 == 0) $this->SetFillCOlor(255.20. $pdf->Output().$i<=sizeof($w)-1.$data) { // setting lebar masing-masing kolom dalam mm $w=array(10. $pdf->AddPage(). $j++. } // penutup tabel $this->Cell(array_sum($w).''.''. } } $pdf=new PDF().rosihanari.235.net function TabelWarna($header.$row[$i].net 29 .rosihanari.1). // membuat kepala tabel for($i=0. 0).$i<count($header). // setting warna putih else $this->SetFillCOlor(224.0.12). // memanggil function untuk baca data $data=$pdf->LoadData().'L'. // memanggil function untuk menampilkan tabel $pdf->TabelWarna($header.$data). // menampilkan data // setting jenis font pada data tabel $this->SetFont('Arial'.12). $this->Ln(). 0.255.$i++) { // memberi warna latar merah pada kepala tabel $this->SetFillColor(255.6.50. ?> Source code dapat didownload di http://source.45). // nama-nama kolom untuk kepala tabel $header=array('No'. // setting warna biru muda // menampilkan data rata kiri for($i=0.'T').Membuat Dokumen PDF dg PHP http://blog.'ALAMAT').255).'NIM'.