<?php /* Preparation Information */ $docPaddingTop = 40; $docPaddingLeft = 50; $docPaddingRight = 50; $docPaddingBottom = 50; $compName = "Google Inc"; $compAddress = "1600 Amphitheatre Parkway Mountain View, CA 94043."; $compAddress2 = "Telepon: +1 650-253-0000, Faks: +1 650-253-0001."; /* Create PDF Document */ $doc = new HaruDoc; $doc->setPageMode(HaruDoc::PAGE_MODE_USE_THUMBS); /* Preparation Font */ $timesNormal = $doc->getFont('Times-Roman'); $timesBold = $doc->getFont('Times-Bold'); /* Preparation Logo */ $logo = $doc->loadJPEG('google.jpg'); $lWidth = $logo->getWidth(); $lHeight = $logo->getHeight(); /* Create New Page */ $page = $doc->addPage(); $page->setSize(HaruPage::SIZE_A4, HaruPage::PORTRAIT); $pWidth=$page->getWidth(); $pHeight=$page->getHeight(); /* Start Creating Header */ /* Create Logo */ $page->drawImage($logo, $docPaddingLeft, $pHeight-$lHeight-$docPaddingTop, $lWidth, $lHeight); /* Show Title Company */ $page->setFontandSize($timesBold, 14); $page->beginText(); $page->textOut($lWidth+$docPaddingLeft+10, $pHeight-$docPaddingTop-14, $compName); $page->setFontandSize($timesNormal, 12); $page->textOut($lWidth+$docPaddingLeft+10, $pHeight-$docPaddingTop-26, $compAddress); $page->textOut($lWidth+$docPaddingLeft+10, $pHeight-$docPaddingTop-38, $compAddress2); $page->endText(); /* Create Horizontal Line */ $page->setRGBStroke(0,0,0); $page->setRGBFill(1,1,1); $page->moveTo($docPaddingLeft, $pHeight-$lHeight-$docPaddingTop-2); $page->lineTo($pWidth-$docPaddingRight, $pHeight-$lHeight-$docPaddingTop-2); $page->fillStroke(); /* Save and Show it to download */ $doc->save('header.pdf'); header('Content-Type: application/pdf'); $showit = file_get_contents('header.pdf'); echo $showit;
Penjelasan :
Line 4-7 : Membuat variable untuk padding halaman
Line 9-11 : Membuat informasi dasar Header
Line 14 : Membuat dokumen pdf baru
Line 15 : Membuat tampilan utama halaman pada saat dibuka user
Line 18-19 : Membaut varibale yang akan menyimpan informasi font yang digunakan
Line 22-24 : Membuat variable yang akan menyimpan informasi logo
Line 27 : Membuat halam baru
Line 28 : Menentukan halaman baru tersebut berukuran A4, dan berpenampilan Portait
Line 30-31 : Mengambil informasi halaman baru tersebut
Line 35 : Menempel logo di bagian atas kiri halaman
Line 38-44 : Menempel informasi yang di set pada line 9-11
Line 47-51 : Membuat garis horizontal tepat dibawah logo
Line 54 : Menyimpan file tersebut kedalam direktori dengan nama header.pdf
Line 55-57 : Memberikan pilihan kepada user untuk mendownload file tersebut.