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

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

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

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

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

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

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

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

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

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

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

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

0.'rosihanari.'B'. $this->Cell(30.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().10. Anda harus membuat subclass pada FPDF().10).rosihanari. // membuat jarak terhadap cell sebelumnya $this->Cell(132).'L').'Ini adalah contoh sebuah header'.'L'). 18 mm) sampai koordinat (198 // mm. // menulis header $this->Cell(30.10).net'.net Membuat Header dan Footer Anda dapat mempercantik halaman dokumen PDF dengan menambahkan header dan footer. Header dapat ditambahkan dengan membuat function berikut ini dalam subclass PDF sebagai perluasan FPDF.'I'.0.10. // setting properti font $this->SetFont('Arial'. // membuat garis dari koordinat (11 mm. // file 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.net 14 .php'). Untuk menambahkan header dan footer.0. Contoh: <?php require('fpdf.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Sign up to vote on this title
UsefulNot useful