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

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

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

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

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

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

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

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

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

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

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

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).rosihanari.Membuat Dokumen PDF dg PHP http://blog.rosihanari.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Sign up to vote on this title
UsefulNot useful