PHP Script – Create PDF With FPDF

FPDF is one of powerful and free PHP library for you to create PDF pages or documents on the fly. The library is well documented is easy to use for you who know PHP. PDF pages can be used to generate e-Books, online web reporting and so on. In this topic, we will show you how to create PDF pages using this powerful library.

Download FPDF Class Library

As the first step, you need to download FPDF Class Library. FPDF Class Library can be downloaded for free at fpdf.org. Copy the package into your project folder. Please read the installation guide to know how to place this package.

Source Code

<?
    //By    : Xhanch Studio
    //URL   : http://xhanch.com/

    //define FPDF font path
    define('FPDF_FONTPATH', 'fpdf/font/');
    //include FPDF class library file
    require_once 'fpdf/fpdf.php';

    //create an instance of FPDF
    //The first parameter should be paper orientation
    //P refers to potrait and L refers to Letter
    //The second parameter should be measuring-unit used
    //Available units: cm, mm, in and pt
    //The last parameter should be paper type
    //Availale paper types: A4, Letter, and Legal
    $pdf = new FPDF('P', 'cm', 'A4');

    //Init PDF creation
    $pdf->open();

    //Add a new PDF blank page
    $pdf->AddPage();

    //You may set the margin (optional)
    //The first param is the left margin
    //The second param is the top margin
    //The third param is the right margin
    //The fourth param is the bottom margin
    $pdf->SetMargins(1,1,1,1);

    //Set font
    //The first param should be the font family
    //Available fonts: courier, helvetica, times
    //The second param should be the font style
    //Available style: B(Bold), U(Underline) and I(Italic)
    //The third param should be the font size
    $pdf->SetFont('Arial', 'BUI', 21);

    //Set font color
    //Color is represent by RGB
    //The first param is Red color index
    //The second param is Green color index
    //The third param is Blue color index
    $pdf->SetTextColor(200,75,75);

    //Print a text on the page
    //The first param should be the width of text area
    //0 value will make the FPDF automate the width
    //The second param is the height
    //The third param is the text
    $pdf->Cell(0, 2, 'Hello there!');

    //Print a line break
    //The param is the height of line spacing
    //If you leave it empty, it will use default size
    $pdf->Ln(2);

    //Set text alignment and bordering
    //The fourth param is the size of border
    //0 means borderless
    //The fifth param is the size of line spacing
    //0 means no spacing after the text is printed
    //The last param is the text alignment
    //C(Center), L(Left), R(Right)
    $pdf->Cell(0, 2, 'Hello there!',0, 0, 'C');

    $pdf->Ln(1.5);

    //You may re-define the font style as you wish
    $pdf->SetFont('Arial', 'I', 12);
    $pdf->SetTextColor(0,0,255);

    //Print a multiline/paragraph text
    $text = '
        this is a long paragraph. this is a long paragraph.
        this is a long paragraph. this is a long paragraph.
        this is a long paragraph. this is a long paragraph.
        this is a long paragraph. this is a long paragraph.
        this is a long paragraph. this is a long paragraph.
        this is a long paragraph. this is a long paragraph.
    ';
    //The first param should be the width of text area
    //0 value will make the FPDF automate the width
    //The second param is the line spacing for this paragraph
    //The third param is the text
    $pdf->MultiCell(17.5,0.5,$text);
    //You may add more param for multicell
    //The fourth param is the border width
    //The fifth param is the alignment
    //e.g: $pdf->MultiCell(8,1,$text,1,'L');

    $pdf->Ln(0.5);

    $pdf->SetFont('Arial', 'U', 8);
    $pdf->SetTextColor(0,0,200);

    //Add a link
    //The first param is the line height
    //The second param is the link text
    //The last param is the link URL
    $pdf->Write(1, 'FPDF Example by Xhanch', 'http://xhanch.com');

    $pdf->Ln(0.5);
    //Adding image
    //The first param is the file path
    //Allowed type: jpg, jpeg, gif and png
    //The second param is the x coordinate of the page
    //The third param is the y coordinate of the page
    //The fourth param is the width of the image
    //The fifth param is the height of the image
    $pdf->Image('http://xhanch.com/xhanch-banner.jpg', 1, 10, 5.8, 1.5);

    //Creating table
    //Table can be created by using Cell function
    //We just need to set the cell border

    $pdf->Ln(5.5);

    //Data for the table
    $header = array('Col A', 'Col B', 'Col C');
    $data = array(
        array('A1', 'B1', 'C1'),
        array('A2', 'B2', 'C2'),
        array('A2', 'B2', 'C2')
    );

    //Simple table
    foreach($header as $col)
    $pdf->Cell(2, 0.5, $col, 1);
    $pdf->Ln();
    foreach($data as $row){
        foreach($row as $col)
            $pdf->Cell(2, 0.5, $col, 1);
        $pdf->Ln();
    }

    $pdf->Ln(0.5);

    //Improved table
    //Set Column widths
    $w=array(2,2,2);
    for($i=0;$i<count($header);$i++)
        $pdf->Cell($w[$i],0.5,$header[$i],1,0,'C');
    $pdf->Ln();
    foreach($data as $row){
        $pdf->Cell($w[0],0.5,$row[0],'LR');
        $pdf->Cell($w[1],0.5,$row[1],'LR');
        $pdf->Cell($w[2],0.5,$row[2],'LR');
        $pdf->Ln();
    }
    $pdf->Cell(array_sum($w),0,'','T');

    $pdf->Ln(0.5);

    //Colored table
    $pdf->SetFillColor(255,0,0);
    $pdf->SetTextColor(255);
    $pdf->SetDrawColor(128,0,0);
    $pdf->SetLineWidth(0.01);
    $pdf->SetFont('','B');
    $w=array(2,2,2);
    for($i=0;$i<count($header);$i++)
        $pdf->Cell($w[$i],0.5,$header[$i],1,0,'C',true);
    $pdf->Ln();
    $pdf->SetFillColor(224,235,255);
    $pdf->SetTextColor(0);
    $pdf->SetFont('');
    //Data
    $fill=false;
    foreach($data as $row){
        $pdf->Cell($w[0],0.5,$row[0],'LR',0,'L',$fill);
        $pdf->Cell($w[1],0.5,$row[1],'LR',0,'L',$fill);
        $pdf->Cell($w[2],0.5,$row[2],'LR',0,'L',$fill);
        $pdf->Ln();
        $fill=!$fill;
    }
    $pdf->Cell(array_sum($w),0,'','T');

    //Displaying PDF page
    $pdf->Output();

    //If you want to force the viewer to download
    //the PDF file use the following command instead
    //of $pdf->Output()
    //$pdf->Output('file_name.pdf', 'D');
?>

Code Result

Click here to view the PDF generated by the above PHP script.

Click here to support our work. Thanks :)

Incoming search terms:

fpdf line spacing, fpdf font color, fpdf line height, fpdf bottom margin, fpdf set bottom margin, fpdf letter spacing, fpdf php free download, fpdf setmargins, fpdf set font color, fpdf paragraph, fpdf border width, fpdf margin, fpdf margin bottom, FPDF wordpress, $pdf->Ln();, $pdf->Ln, fpdf set line height, fpdf script, fpdf spacing, fpdf multicell line height, wordpress FPDF, font path fpdf, fpdf php, fpdf create table, fpdf php code, fpdf border color, set font color fpdf, $pdf->ln(), setmargins fpdf, fpdf font path, fpdf textarea, $pdf->SetFont color, fpdf generate pdf table, create pdf php script, fpdf lineheight, fpdf examples, fpdf set margin, fpdf top margin, fpdf cell margin, set bottom margin fpdf, fpdf text area, textarea in fpdf, fpdf setfont color, bottom margin fpdf, fpdf fontpath, php $pdf text align, fpdf multiline in a cell, FPDF border, mpdf header margin, fpdf page border, fpdf scripts, paragraph fpdf examples, fpdf download, fpdf setfont, fpdf cell border width, fpdf letter space, fpdf letter, fpdf SetFontColor, fpdf, FPDF SET PAPER, margin fpdf, fpdf multiline, fpdf set margins, setwidths fpdf, create table in fpdf, php to pdf script, fpdf line-height, create pdf with fpdf, fpdf bottom, creating a paragraph in fpdf, set font color in fpdf, php script generate pdf, fpdf setmargin, fpdf script free, margin bottom fpdf, border in fpdf, fpdf setline, php fpdf, php pdf script, $pdf- ln, php code to generate pdf, script fpdf, fpdf guide, fpdf multicell height, fpdf create pdf, paragraph in fpdf, setline fpdf, fpdf character spacing, fpdf improved table, set bottom margin in fpdf, php script to generate pdf, php:how to create table in pdf format, fpdf set margins to 0, php thaipdf insert table, fpdf set text area, how to set page border in fpdf, fpdf set width, php scripts for pdf creating, sample script to use fpdf with php, drupal FPDF, xhanch

No related posts.


Posted on 2010-02-12 by Susanto BSc in Free Script, PHP Script
Tagged as: , , , , , , , , , , , , , , , , ,

4 Responses to “PHP Script – Create PDF With FPDF”

  1. alaa says:

    i want put html script and convert it to pdf in the fpdf class

    i dont can work it

    help me please

  2. Andrei says:

    Nice example!
    very helpful code for me!

Leave a Reply

You must be logged in to post a comment.

Latest Tweets