Presentation is loading. Please wait.

Presentation is loading. Please wait.

Converting PDF Files using PHP By Idris Winarno

Similar presentations


Presentation on theme: "Converting PDF Files using PHP By Idris Winarno"— Presentation transcript:

1 Converting PDF Files using PHP By Idris Winarno idris@eepis-its.edu

2 Tools FPDF PDFlib HTML_ToPDF

3 FPDF Install your apache2 and PHP5 – # apt-get install apache2 php5 Install fpdf – # apt-get install fpdf Intergrate your fpdf into your php – ln -s /usr/share/fpdf/var/www/fpdf

4 Testing FPDF (1) <?php require('fpdf.php'); $pdf=new FPDF('P','mm','A4'); $pdf->AddPage(); $pdf->SetFont('Arial','B',16); $pdf->Cell(40,10,'Hello World!'); $pdf->Output(); ?>

5 Testing FPDF (2) <?php require('fpdf.php'); class PDF extends FPDF { //Page header function Header() { //Logo $this->Image('logo_pb.png',10,8,33); //Arial bold 15 $this->SetFont('Arial','B',15); //Move to the right $this->Cell(80); //Title $this->Cell(30,10,'Title',1,0,'C'); //Line break $this->Ln(20); } //Page footer function Footer() { //Position at 1.5 cm from bottom $this->SetY(-15); //Arial italic 8 $this->SetFont('Arial','I',8); //Page number $this->Cell(0,10,'Page '.$this- >PageNo().'/{nb}',0,0,'C'); } //Instanciation of inherited class $pdf=new PDF(); $pdf->AliasNbPages(); $pdf->AddPage(); $pdf->SetFont('Times','',12); for($i=1;$i<=40;$i++) $pdf->Cell(0,10,'Printing line number '.$i,0,1); $pdf->Output(); ?>

6 PDFLib Installing PDFLib – apt-get install libapache2-mod-php4 libapache2-mod-php4 – apt-get install php4-dev php5-dev php4-pear php5-pear – pear install pdflib --with-pdflib=/usr/local Adding new extension into php.ini – echo "extension=pdf.so" >> /etc/php4/conf.d/pdf_lib.ini – echo "extension=pdf.so" >> /etc/php5/conf.d/pdf_lib.ini Checking yout config – apache2ctl configtest Syntax OK Restart your apache – # /etc/init.d/apache2 restart

7 Alternative install of PDFLib # cd /usr/src/ # wget http://www.pdflib.com/binaries/PDFlib/704/PDFlib-Lite-7.0.4p4.tar.gzhttp://www.pdflib.com/binaries/PDFlib/704/PDFlib-Lite-7.0.4p4.tar.gz Or # wget http://lecturer.eepis-its.edu/~idris/files/aplikasi_web/PDFlib-Lite- 7.0.4p4.tar.gzhttp://lecturer.eepis-its.edu/~idris/files/aplikasi_web/PDFlib-Lite- 7.0.4p4.tar.gz # tar xvf PDFlib-Lite-7.0.4p4.tar.gz # cd PDFlib-Lite-7.0.4p4 #./configure # make # make install # pecl install pdflib # install dir /usr/local Adding pdflib.so into your php.ini # /etc/init.d/apache2 restart

8 PDFLib phpinfo() PDF Support => enabled PDFlib GmbH Version => 4.0.1 Revision => $Revision: 1.8 $ Pdflib 4.0.1 - installation ok

9 PDFLib Example <?php $p = PDF_new(); /* open new PDF file; insert a file name to create the PDF on disk */ if (PDF_begin_document($p, "", "") == 0) { die("Error: ". PDF_get_errmsg($p)); } PDF_set_info($p, "Creator", "hello.php"); PDF_set_info($p, "Author", "Rainer Schaaf"); PDF_set_info($p, "Title", "Hello world (PHP)!"); PDF_begin_page_ext($p, 595, 842, ""); $font = PDF_load_font($p, "Helvetica-Bold", "winansi", ""); PDF_setfont($p, $font, 24.0); PDF_set_text_pos($p, 50, 700); PDF_show($p, "Hello world!"); PDF_continue_text($p, "(says PHP)"); PDF_end_page_ext($p, ""); PDF_end_document($p, ""); $buf = PDF_get_buffer($p); $len = strlen($buf); header("Content-type: application/pdf"); header("Content-Length: $len"); header("Content-Disposition: inline; filename=hello.pdf"); print $buf; PDF_delete($p); ?>

10 HTML_ToPDF Download source – # cd /usr/src – #wget http://www.rustyparts.com/scripts/HTML_ToPDF- 3.5.tar.gzhttp://www.rustyparts.com/scripts/HTML_ToPDF- 3.5.tar.gz or – wget http://lecturer.eepis- its.edu/~idris/files/aplikasi_web/HTML_ToPDF-3.5.tar.gzhttp://lecturer.eepis- its.edu/~idris/files/aplikasi_web/HTML_ToPDF-3.5.tar.gz Make symbolic link into /var/www – # ln -s /usr/src/HTML_ToPDF-3.5 /var/www/html2pdf Installaing html2ps & ps2pdf – # apt-get install html2ps – # apt-get install texlive-latex-recommended

11 Creating HTML This HTML code will be converted into PDF Make your own HTML code

12 HTML_ToPDF Test <?php /** $Id: example1.php 2426 2006-11-18 19:59:26Z jrust $ */ /** * The simplest example. We convert an HTML file into a PDF file. * We also add a few custom headers/footers to the PDF. */ ?> Testing HTML_ToPDF Creating the PDF from local HTML file.... Note that we customize the headers and footers! <?php // Require the class require_once dirname(__FILE__). '/../HTML_ToPDF.php'; // Full path to the file to be converted $htmlFile = dirname(__FILE__). '/test.html'; // The default domain for images that use a relative path // (you'll need to change the paths in the test.html page // to an image on your server) $defaultDomain = 'www.rustyparts.com'; // Full path to the PDF we are creating $pdfFile = dirname(__FILE__). '/timecard.pdf'; // Remove old one, just to make sure we are making it afresh @unlink($pdfFile); // Instnatiate the class with our variables $pdf =& new HTML_ToPDF($htmlFile, $defaultDomain, $pdfFile); // Set headers/footers $pdf->setHeader('color', 'blue'); $pdf->setFooter('left', 'Generated by HTML_ToPDF'); $pdf->setFooter('right', '$D'); $result = $pdf->convert(); // Check if the result was an error if (is_a($result, 'HTML_ToPDFException')) { die($result->getMessage()); } else { echo "PDF file created successfully: $result"; echo ' Click here to view the PDF file.'; } ?> Please note that your folder permission is fully open

13 It’s your turn How to make a PDF file converted into database and shown by PHP files Please adapt into Final Project files (pdf files) to capture the abstract page (id and en)

14 THANK YOU


Download ppt "Converting PDF Files using PHP By Idris Winarno"

Similar presentations


Ads by Google